有什么区别可能的重复:
Objective-C中的#Import和#include有什么区别?
#include< >
#include" "
#import< >
#import" "
#import
指令是#include
的改进版本。 #import
确保仅包含文件,以使您永远不会遇到递归问题。
#import ""
首先检查项目文件夹中的标头,然后转到系统库,然后检查#import<>
的系统标头"。从理论上讲,位置是编译器定义的,并且可以在给定平台上以不同的方式实现。
使用#import
时,标头Incluber Guard是不必要的。否则,就像 #include
。
标题包括后卫,在C和C 文件中看到:
#ifndef HGUARD_MONHeader_h
#define HGUARD_MONHeader_h
...header contents...
#endif
导入是超级集合,它确保文件仅包含一次。这使您免于递归包容。关于"和&lt;>。"在本地目录和&lt;>中搜索用于系统文件。
#import指令被添加到Objective-C中,作为#include的改进版本。但是,是否得到改进仍然是辩论的问题。#Import确保仅包含文件,以免您遇到递归中的问题。但是,大多数体面的标头文件无论如何都可以保护自己免受此保护,因此并不是真正的好处。
Objective-C中的#Import和#include有什么区别?:
#include和#import请求预处理器*读取文件和 将其添加到其输出中。#include和#import之间的区别是 那
#include允许您多次包含同一文件。#进口 确保预处理器仅包含一次文件。C 程序员倾向于使用#include。Objective-C程序员倾向于使用 #进口。
*在Objective-C中编译文件是在两次通过的情况下完成的。首先,
预处理器通过文件运行。来自 预处理器进入真实编译器。