最近发现很多代码在进行宏定义的时候使用喜欢使用#define MACRO_NAME(para) do{macro content}while(0)的格式,总结了以下几个原因:1,空的宏定义避免warning:#define foo() do{}while(0)2,存在一个独立的block,可以用来进...
分类:
其他好文 时间:
2014-09-11 22:24:02
阅读次数:
191
【唠叨】数学类Vec2、Size、Rect,是cocos2dx中比较常用的类。比如设置图片位置,设置图片大小,两图片的碰撞检测等等。比起2.x版本,在3.2中本质上其实没有太大的变化,主要的变化就是将全局宏定义相关的操作封装到各自的类中而已。比如:Vec2的向量运算宏定义ccp***(),现在..
分类:
其他好文 时间:
2014-09-11 02:21:12
阅读次数:
226
全局变量 是可以在程序中任何地方使用 而且是可以修改的 宏定义也可以在任何地方使用 但是不能在之后修改 数据类型没有限制的宏的例子:#define 宏名 宏体 #define PI 3.1415926转载自: http://zhidao.baidu.com/link?url=Damb48cop...
分类:
编程语言 时间:
2014-09-10 15:48:20
阅读次数:
198
一个困扰很久的问题终于解决了,感谢万能的网络~在看项目代码的时候,看到很多宏定义“类型-1”,很纳闷,类型还能做减法??typedef unsigned int uint;#define a (uint)-1让我敲敲自己秀逗的脑袋,居然一直以为是减法。(uint)-1其实是强制类型转换,把-1转换成...
分类:
其他好文 时间:
2014-09-09 19:57:49
阅读次数:
122
转自:http://blog.csdn.net/lightlater/article/details/5848200C++中引入inline关键字的原因:inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。什么是内联函数?表达式形式的宏定义一例:#defin...
分类:
其他好文 时间:
2014-09-09 11:15:28
阅读次数:
219
Const CSIDL_ADMINTOOLS As Long = &H30 '(用户)\开始菜单\程序\系统管理工具Const CSIDL_ALTSTARTUP As Long = &H1D '未本地化的启动Const CSIDL_APPDATA As Long = &H1A '(用户)\应用程序的...
分类:
其他好文 时间:
2014-09-06 19:55:13
阅读次数:
193
条款2:Prefer consts,enums,and inlines to #defines译:尽量以const,enums,inline替换#define。#define是预处理器中宏定义。举个例子#define PI = 3.1415926,这句话就相当于把代码中所有出现的symbol在编译前...
分类:
编程语言 时间:
2014-09-04 18:28:49
阅读次数:
215
按句移动光标(). ? !结尾的句子,并且后面只是一个空格,被称为句子代码中这个比段落移动实用一些按段移动光标就是移动到下一个空行‘’可回{}查看函数说明在库函数上大写K可以看到man pageprintf 需要按 3 K大写K 查看系统函数man page查看宏定义[d 需要包含头文件VI小技巧:...
分类:
其他好文 时间:
2014-09-03 23:55:22
阅读次数:
198
方法一://***宏定义#define iPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainSc...
分类:
移动开发 时间:
2014-09-01 12:06:03
阅读次数:
238
任何程序都会有一些通用的功能需求,对这些需求的实现组成了库。它可以提高程序的复用性、健壮性和可移植性,这也是模块化设计的体现。C规范定义了一些通用接口库,这里只作概述性介绍,具体细节当然还是要查阅规范。 为了提高效率,C的很多库函数会同时有一个宏定义的版本,所以传递参数时尽量使用没有副作用的表...
分类:
其他好文 时间:
2014-08-30 07:41:29
阅读次数:
227