cocos2d-x定义了很多宏定义,帮我们提高开发效率,下面看下CC_PROPERTY,
CC_PROPERTY定义
CC_PROPERTY的声明在CCPlatformMacros.h中,结构如下
#define CC_PROPERTY ( varType,
varName,
funName
) varType : 变量类型.
varName :变量名称
funName : "get + funName"是变量的getter. "set + funName"是变量的setter.
成员函数和成员变量有
protected: varType varName;\
public: virtual varType get+funName(void);\
public: virtual void set+funName(varType var);
CC_PROPERTY 用来声明一个protected变量。
使用CC_PROPERTY声明的变量可以使用getter获取变量的值,使用setter设置变量的值。
class Hero: public CCSprite
{
CC_PROPERTY(int, _heroName, HeroName);
CC_PROPERTY(int, _heroDegre, HeroDegre);
CC_PROPERTY(int, _heroHp, HeroHp);
...
}; Hero *myhero = new Hero;
if ( myhero->initWithFile("hero.png") &&
myhero->autorelease() )
{ myhero->setHeroName();
myhero->setHeroDegre();
myhero->setHeroHp();
int heroname=myhero->getHeroName();
}

转自:http://xiandanboke.com.cn/cocos2d-xccproperty.html

cocos2d-x中的宏定义CC_PROPERTY的更多相关文章

  1. iOS 静态库中使用宏定义区分iPhone模拟器与真机---备用

    问题描述 一般项目中,可以使用宏定义来判断模拟器还是真机,这无疑是有效的. #if TARGET_IPHONE_SIMULATOR #define SIMULATOR 1 #elif TARGET_O ...

  2. C++中的内联函数和C中的宏定义的区别

    在C++中内联函数: 内联函数即是在函数的声明和和定义前面加上“inline”关键字,内联函数和常规函数一样,都是按照值来传递参数的,如果参数为表达式,如4.5+7.5,则函数将传递表达式的值(这里为 ...

  3. Makefile中进行宏定义-***

    实际上是gcc命令支持-D宏定义,相当于C中的全局#define: gcc -D name gcc -D name=definition Makefile中可以定义变量(和宏很像),但是是给make解 ...

  4. C语言学习笔记--C语言中的宏定义

    1. C 语言中的宏定义 (1)#define 是预处理器处理的单元实体之一(因此,预处理器只是简单的进行替换,并不(2)#define 定义的宏可以出现在程序的任意位置(包括函数体的内部)(3)#d ...

  5. Makefile中用宏定义进行条件编译(gcc -D)/在Makefile中进行宏定义-D【转】

    本文转载自:http://blog.csdn.net/maopig/article/details/7230311 在源代码里面如果这样是定义的:#ifdef   MACRONAME//可选代码#en ...

  6. 内核中的宏定义__init、__initdata和__exit、__exitdata

    __init.__initdata和__exit.__exitdata的定义位于<kernel/include/linux/init.h> /* These are for everybo ...

  7. [C++] C++中的宏定义详解

    转载自:C++中的宏定义 和 C++宏定义详解 一.#define解析     #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率 ...

  8. 20个C语言中常用宏定义总结

    01: 防止一个头文件被重复包含 #ifndef COMDEF_H#define COMDEF_H//头文件内容#endif 02: 重新定义一些类型防止由于各种平台和编译器的不同,而产生的类型字节数 ...

  9. C语言中的宏定义

    目录(?)[-] 简单宏定义 带参数的宏 运算符 运算符 宏的通用属性 宏定义中圆括号 创建较长的宏 较长的宏中的逗号运算符 宏定义中的do-while循环do 空操作的定义 预定义宏 C语言中常用的 ...

随机推荐

  1. 2017年USNews美国大学研究生专业排名

    2017年USNEWS美国大学研究生专业排名最佳商学院排名 排名 学校 费用 注册人数 #1 Harvard University Boston, MA $61,225 per year (full- ...

  2. linux清空文件方法

    1.以下方法,清除后,文件大小为0 2.以下方法,清除后,文件大小为1 多了一个结束字符

  3. VisualStudio使用GIT

    使用GIT进行源码管理 -- 在VisualStudio中使用GIT GIT作为源码管理的方式现在是越来越流行了,在VisualStudio 2012中,就通过插件的现实对GIT进行了官方支持,并且这 ...

  4. android用jsonReader来解析json

    对于这个json: { "id" : "3232", "data" : [{ "data1" : "555&q ...

  5. iOS:切换视图时,反向传递数据方法二:代理

    代理: 1.发送信息的控制器设置一个代理,并自定义一个代理的方法,用来传递数据 2.接受信息的控制器遵循发送信息的控制器的协议 3.接受信息的控制器设置发送信息的控制器的代理为自己self 4.接受信 ...

  6. CSS_LESS 语法/函数详解

    嵌套规则 01 #header { color: black; }#header .navigation {  font-size: 12px; 02 }#header .logo {  03   w ...

  7. 阿里云 Ubuntu 14.04 安装mysql 5.6

    1. 升级apt-get apt-get update 如果出现 : 说明没有你不是root用户,则需要用sudo命令 sudo apt-get update 下面出现权限问题都可以参照这个方法. 2 ...

  8. Transfrom在64bit服务下面无法运行

    利用TR发布了一个cube到Cognos connection里面,利用Analysis Studio打开的时候报错如下 问题是很简单的,按照报错内容看是当前的64bit的report  servic ...

  9. 使用IntelliJ IDEA开发Spring MVC HelloWorld

    https://blog.csdn.net/industriously/article/details/52851588 https://blog.csdn.net/slow_wakler/artic ...

  10. Apache问题综述

    1.配置好了,访问的时候出现Forbbiden,如下图:解决方法:1.修改读写权限: 2.将配置文件中httpd.conf的<Directory>中的Denly from all 改成Al ...