【发布时间】:2015-01-19 10:13:57
【问题描述】:
在 Objective-C 中,您可以使用 #define 定义宏
#define kSomeMacro 1024
然后用那个宏来做类似的事情......
if (kSomeMacro == 1024) {
....
}
但是,如果您在末尾使用冒号定义宏
#define kSomeMacro 1024;
那么 if 语句将不起作用。这背后的原因是什么?如果您在定义宏时输入;,编译器为什么不抱怨?
【问题讨论】:
-
因为它是一个简单的文本替换。因此,
if (1024; == 1024) {无效。
标签: objective-c macros