创建:2011.06.03
<Objective-C程序设计>笔记
*变量用volatile修饰之后,它明确的告诉编译器,该变量值会发生改变,它用来
修饰被不同线程访问和修改的变量。例如:
*char1 = 'a';
*char1 = 'b';
如果没有使用volatile,那么,当编译器遇到这两行代码时,因为对一个地址连续
两次赋值,所以编译器就将第一个语句从程序中删除掉。
*dynamic标记的属性,系统会推迟到运行时才动态生成相应的方法。
*定义新协议,可以扩展原有协议。
@protocol NewPro<OldPro>
*不允许函数重载。
*ObjC没有抽象类的概念。
*宏定义中的#,会产生c语言风格的字符串
#define str(x) #x
str(test);
得到 "test".
*#ifdef, #endif,#else, #ifndef
*#if, #elif, #endif
*#undef
+++++