我想知道是什么决定了当你在Objective-C中导入文件时,你可以使用<Header.h>还是"Header.h".到目前为止,我的观察是,你在项目中使用引号""来表示你的实现源文件,在引用库或框架时使用尖括号<>.

但这到底是怎么回事?我需要做什么才能让我自己的类使用括号?现在,Xcode不允许我对自己的头文件执行此操作.

此外,通过查看一些框架的标题,我看到这些标题相互引用<frameworkname/file.h>.that是怎么工作的?它看起来很像Java中的包,但据我所知,Objective-C中没有包.

推荐答案

Objective-C与C/C++有共同之处;带引号的形式表示文件的"本地"包含(您需要指定当前文件的相对路径,例如#include "headers/my_header.h"),而尖括号形式表示"全局"包含——在传递给编译器的包含路径(例如#include <math.h>)的某处找到的包含.

因此,要拥有自己的头文件,需要将头文件目录的相对路径或绝对路径传递给编译器.有关如何在Xcode中实现这一点的信息,请参见"How to add a global include path for Xcode".

更多信息请参见this MSDN page.

Objective-c相关问答推荐

NSString "nil or empty" 判断 - 这完成了吗?

如何用零填充左侧的整数?

如何创建圆形按钮?

iPhone:推送通知后如何删除徽章?

如何使用整数值作为键在 NSMutableDictionary 中设置值?

何时使用静态字符串与 #define

如何编写 Objective-C 完成块

iOS 在设备旋转时更改自动布局约束

使用情节提要的条件转场

Obj-C 中的多值枚举

distanceFromLocation - 计算两点之间的距离

如何在 ios 8 的 alertview 中添加文本输入?

MKAnnotation 图像偏移与自定义引脚图像

无法将 searchBar 设置为 firstResponder

@dynamic 在 Objective-C 中做了什么?

BOOL到 NSString

iPhone:如何确定线程是否是主线程?

UITableView 在半透明的导航栏下

xcode 5.1 中的 Arm64 架构

Xcode 如何加载主情节提要?