【问题标题】:difference between "file.h" and <file.h> import statements [duplicate]“file.h”和 <file.h> 导入语句之间的区别 [重复]
【发布时间】:2011-06-22 10:41:42
【问题描述】:

可能重复:
Obj C - #import < > and “ ”

这可能是一个简单的问题,但在谷歌上搜索却很困难。下面两个语句有什么区别?

#import "GrowlDisplayPlugin.h"
#import <GrowlDisplayPlugin.h>

它们以不同的方式为我工作,所以我认为是时候了解我在做什么了。

特别是,第二个说“没有这样的文件或目录”,而第一个显示链接错误。

Undefined symbols:
  "_OBJC_METACLASS_$_GrowlDisplayPlugin"

谢谢

【问题讨论】:

  • Obj C - #import < > and " " 的可能重复项,我的 Google 术语是“尖括号导入目标-c”
  • 关于链接错误:它只能有一个原因:错误链接。框架还是库?共享库还是静态库?用户或应用程序框架?
  • @Ief2 我只是想复制 Display Plugin Sample here 的结构。他们有没有实现的本地头文件,但用&lt;..&gt; 引用它们

标签: objective-c cocoa xcode


【解决方案1】:

" 用于本地文件。这意味着当前目录或 GCC 编译器的 -iqoute 标志指定的目录中的文件。

&lt;&gt; 用于在您的路径文件夹中找到的系统文件。 /usr/include 可能就是其中之一。 -I 标志可用于在查找这些文件时指定要搜索的更多目录。

【讨论】:

    【解决方案2】:

    使用 从库搜索路径导入。使用 "" 从您的用户搜索路径(通常只是包含您的项目的目录)导入文件

    【讨论】:

    • 在 xcode 中究竟如何设置库搜索路径?我见过很多项目使用&lt;..&gt; 引用本地文件。
    【解决方案3】:

    不同之处在于顺序,编译器在不同文件夹中搜索文件。 “fine.h”形式优先于当前文件夹(包含源文件的文件夹)。 表格先搜索系统包含文件夹。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-26
      • 2013-01-20
      • 2018-03-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多