关于Cocos2d-x数据类型的使用

常用的是三种数据类型,Value,Vector,Map,翻译成中文就是值,数组,字典。其中字典的意思就是拿着某个关键字去这个数据结构里面找相应的对应的数据。

//Value数据类型
Value intvar(30.0f);
log("%d", intvar.getType()==Value::Type::INTEGER);

//Vector数据类型
balls.pushBack(b);

//Vector数据类型
ball *b;
for (auto it = balls.begin(); it != balls.end(); it++)
{
b = *it;
b->move();
if (b->getPositionX() > visibleSize.width ||
b->getPositionX() < 0||
b->getPositionY() > visibleSize.height ||
b->getPositionY() < 0)
{
balls.eraseObject(b);
removeChild(b);
break;
}

//Map数据类型
maps.insert("h", __String::create("Hello,"));
maps.insert("w", __String::create("World!"));
maps.insert("c", __String::create("Cai!"));
log("%s %s", maps.at("h")->getCString(), maps.at("c")->getCString());

时间: 2024-10-13 01:03:52

关于Cocos2d-x数据类型的使用的相关文章

cocos2d::Vector

v3.0 beta加入 定义在"COCOS2DX_ROOT/cocos/base"的"CCVector.h"头文件中. template<class T>class CC_DLL Vector; cocos2d::Vector<T>是一个封装好的能动态增长顺序访问的容器. cocos2d::Vector<T>中的元素是按序存取的,它的低层实现数据结构是标准模版库中的标准顺序容器std::vector. 在Cocos2d-x v3.

Cocos2d-x3.0模版容器详解之——cocos2d::Vector&lt;T&gt;, cocos2d::Map&lt;K,V&gt;, cocos2d::Value

Cocos2d-x3.0模版容器详解之一:cocos2d::Vector<T>  http://www.cocoachina.com/bbs/read.php?tid=199793Cocos2d-x3.0模版容器详解之二:cocos2d::Map<K,V>  http://www.cocoachina.com/bbs/read.php?tid=199916Cocos2d-x3.0模版容器详解之三:cocos2d::Value  http://www.cocoachina.com/b

cocos基础教程(4)数据结构介绍之cocos2d::Vector

cocos2d::Vector cocos2d::Vector<T>是一个封装好的能动态增长顺序访问的容器.cocos2d::Vector<T>中的元素是按序存取的,它的低层实现数据结构是标准模版库中的标准顺序容器std::vector. T - 元素类型 T的类型必须是继承自cocos2d::Object类型的指针.因为已经将Cocos2d-x的内存管理模型集成到了cocos2d::Vector<T>中,所以类型参数不能是其他的类型包括基本类型. 注意:使用现代的c+

cocos基础教程(4)数据结构介绍之cocos2d::Map&lt;K,V&gt;

1.概述 cocos2d::Map<K,V> 是一个内部使用了 std::unordered_map的关联容器模版. std::unordered_map 是一个存储了由key-value键值对组合成构成的关联性容器,允许基于键对单个元素进行快速检索. 2.模版参数 K - key value的类型. map中元素都由它的 key值作为唯一标识. V - mapped value的类型. T 必须是一个指向 cocos2d::Object 子类对象的指针. 3.内存管理 如果你在栈上声明了一个

cocos2d 中使用jni C++ 调用 Java 方法

1.简单数据类型例子 假设我们Java中有这么一个open的静态方法,它没有参数,有一个int的返回值.怎么在C++中调用它呢? package cb.CbCCBLE; public class CbCCBLECentralManager { public static final String TAG = "CbCCBLECentralManager Android"; public static int open() { Log.d(TAG,"open"); r

cocos2d 中使用jni Java 调用 C++ 方法

1.首先是LoadLibrary cocos2d中的C++代码会编译成一个.so文件,放在安卓目录下的libs/armeabi 下,然后java会load进来,这步我们不用做了,因为cocos2d已经帮我们做好了. package cb.CbCCBLE; public class CbCCBLECentralManager { public static final String TAG = "CbCCBLECentralManager Android"; public native

Cocos2d-x3.0模版容器具体解释之二:cocos2d::Map&amp;lt;K,V&amp;gt;

1.概述: 版本号: v3.0 beta 语言: C++ 定义在 "COCOS2DX_ROOT/cocos/base" 路径下的 "CCMap.h" 的头文件里. template <class K, class V> class CC_DLL Map; cocos2d::Map<K,V> 是一个内部使用了 std::unordered_map的关联容器模版. std::unordered_map 是一个存储了由key-value键值对组合成

cocos2d 2.x在opengl es 2.0 下自定义着色器来创建特别酷的特效(译)

cocos2d 2.x在opengl es 2.0 下自定义着色器来创建特别酷的特效(译) (2012-12-24 13:22:17) 转载▼ 标签: it cocos2d opengl 着色器 渲染 翻译:弹涂鱼 PS:欢迎加入开发群:285275050 本文翻译自:http://www.raywenderlich.com/10862/how-to-create-cool-effects-with-custom-shaders-in-opengl-es-2-0-and-cocos2d-2-x#

MariaDB(MySQL)创建、删除、选择及数据类型使用详解

一.MariaDB简介(MySQL简介略过) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品.在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB. MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL A

JavaScript数据类型检测

一.JavaScript 数据类型 1.基本数据类型(6种) Undefined Null Boolean Number String Symbol (ES6新增) 2.引用数据类型: Object 二.数据类型检测 1. typeof 可以检测除null 外的基本类型.null 和所有对象的typeof都是"object", 不能用于检测用户自定义类型. 比如Date, RegExp, Array, DOM Element的类型都是"object". var s