- NS_CC_BEGIN cocos2d命名空间开始
- NS_CC_END cocos2d命名空间结束
- USING_NS_CC 声明cocos2d命名空间
- CC_SYNTHESIZE_READONLY(varType, varName, funName) 声明一个成员变量以及get##funName函数,没有set函数。代码如下:
protected: varType varName;
public: virtual varType get##funName(void) const { return varName; }
5. CC_SYNTHESIZE_READONLY_PASS_BY_REF(varType, varName, funName) 类似CC_SYNTHESIZE_READONLY,不过get##funName返回的是成员变量的引用
。
代码如下:
protected: varType varName;
public: virtual const varType& get##funName(void) const { return varName; }
6.CC_SYNTHESIZE(varType, varName, funName) 声明一个成员变量以及get##funName和set##funName函数.并且函数声明和实现都有。代码如下:
protected: varType varName;
public: virtual varType get##funName(void) const { return varName; }
public: virtual void set##funName(varType var){ varName = var; }
7.CC_SYNTHESIZE_PASS_BY_REF(varType, varName, funName) 类似CC_SYNTHESIZE,不过get##funName返回的是成员变量的引用
。
protected: varType varName;
public: virtual const varType& get##funName(void) const { return varName; }
public: virtual void set##funName(const varType& var){ varName = var; }
8. CC_PROPERTY_READONLY(varType, varName, funName) 声明一个成员变量以及get##funName函数,没有set函数 。 get##funName函数只有声明,而没有定义。
protected: varType varName;
public: virtual varType get##funName(void);
9.CC_PROPERTY_READONLY_PASS_BY_REF(varType, varName, funName) 类似CC_PROPERTY_READONLY,不过get##funName语义上是返回的是成员变量引用 。 并且需要自己实现函数定义。代码如下:
protected: varType varName;
public: virtual const varType& get##funName(void);
10.CC_PROPERTY(varType, varName, funName) 声明一个成员变量以及get##funName和set##funName函数的声明,函数定义需要自行实现。代码如下:
protected: varType varName;
public: virtual varType get##funName(void);
public: virtual void set##funName(varType var);
11.CC_PROPERTY_PASS_BY_REF(varType, varName, funName) 类似CC_PROPERTY,不过get##funName返回的是引用,并且函数的定义需要自行实现。代码如下:
protected: varType varName;
public: virtual const varType& get##funName(void);
public: virtual void set##funName(const varType& var);