Objective-C 程序设计 第十二章

预处理程序

预处理程序语句使用#开头,一行中的第一个非空字符。

大部分内容都与C语言类似,相当于复习啦。

12.1 #define语句 - 宏

  1. 预定义不是变量。不能为它赋值。实际上是字符的简单替换。
  2. #define语句常放在#import或#include语句后边。
  3. 定义一个名称后,可以在任何地方使用。一般放在头文件,方便在多个源文件中使用。
  4. 所有预定义的名称常都使用大写。
  5. 预定义的值本身可以引用其它预定义的值。
  6. 可以把if判断语句放在预定义中,方便理解。
  7. 注意在使用括号,确保替换时的正确性。

12.2 import语句

  1. 预处理程序在系统中寻找指定的文件,并且有效地把文件的内容复制到程序出现#import语句的确切位置。
  2. 使用<>时,会在特殊的系统头文件目录中寻找包含文件,当前目录不会被搜索,可以使用Xcode修改。
  3. 使用”“时,会指示预处理程序在一个或者多个文件目录(通常,首先在包含源文件的目录中查找,但是通过修改适当的“项目设置”,可以用Xcode指定预处理程序搜索的确切位置)中寻找指定的文件。
  4. #import UIKit; 是导入一个模块。

12.3 条件编译

  1. #ifdef, #else ,#endif. #ifndef; 防止头文件多次引用,常用。
  2. 通过 #define IPAD 1 或者 #define IPAD就可以达到定义了的目标。
  3. 也可以在编译选项中添加-D IPAD来达到目标。(这个选项要在程序名称之前输入)
  4. #if A > B | #else | #endif
  5. #ifdef 等同于 #if defined (A) | #ifndf 等同于 #if !defined(A)
  6. 常用的#if defined(A) && A
  7. #if 0 … #endif,用来注释代码段非常方便。
  8. #undef IPAD, 这之后IPAD就进入了未定义状态。

你可能感兴趣的:(读书笔记)