包含和导入之间的区别

可能重复:
Objective-C中#import和#include有什么不同?

有什么区别

#include< > #include" " #import< > #import" " 

    #import指令是#include的改进版本。 #import确保一个文件只包含一次,所以你永远不会有recursion包含的问题。

    #import ""首先检查项目文件夹中的头文件,然后进入系统库, #import<>检查系统头文件。“理论上位置是编译器定义的,并且可以在给定的平台上以不同的方式实现。

    在使用#import ,头部包含警戒是不必要的。 否则,就像#include

    头文件包括guard,在C和C ++文件中可以看到:

     #ifndef HGUARD_MONHeader_h #define HGUARD_MONHeader_h ...header contents... #endif 

    导入是包含超级集合,它确保文件只包含一次。 这节省你recursion包含。 关于“”和“>”。 “”search本地目录,<>用于系统文件。

    #import指令作为#include的改进版本添加到Objective-C中。 然而,是否有所改善仍然是一个争议问题。 #import确保一个文件只包含一次,所以你永远不会有recursion包含的问题。 但是,大多数体面的头文件无论如何保护自己,所以它不是一个真正的好处。

    Objective-C中#import和#include有什么不同? :

    #include和#import请求预处理程序*读取文件并将其添加到其输出中。 #include和#import之间的区别在于

    #include允许你多次包含同一个文件。 #import确保预处理器只包含一次文件。 C程序员倾向于使用#include。 Objective-C程序员倾向于使用#import。

    *在Objective-C中编译一个文件需要两遍。 第一,
    预处理器运行该文件。 预处理器的输出进入真实的编译器。