在 XCode 中创建命令行工具 (Mac OS X) 项目时,必须从这些选项中选择项目的“类型”:-
1.基础 2.核心服务 3.核心基础 4.C 5.C++
问题是:为什么这样的选择以及它是如何影响的?我不能像我们创建一个 cpp 或 c 文件一样创建一个普通的目标 C 程序吗?
在 XCode 中创建命令行工具 (Mac OS X) 项目时,必须从这些选项中选择项目的“类型”:-
1.基础 2.核心服务 3.核心基础 4.C 5.C++
问题是:为什么这样的选择以及它是如何影响的?我不能像我们创建一个 cpp 或 c 文件一样创建一个普通的目标 C 程序吗?
您列出的各种选项决定了您使用的项目模板。这意味着,例如,默认情况下链接了哪些框架以及其他编译器设置。
要创建一个“有意义的”Objective C 项目,您至少需要包含 Foundation 框架,因为NSObject
该类驻留在那里(并且它是 ObjC 运行时的主要“接口”)。
如果您想不使用 NSObject
,则需要在对象中实现与 ObjC 运行时相关的基本内容。查看来自 SO 的这篇文章以获取更多信息。
希望能帮助到你。
答案是您可以像普通的 C 或 C++ 程序一样创建一个 Objective-C 程序,只是,使用 Objective-C 时,您可能需要链接额外的库和额外的头文件。
这些选项中的每一个都使用具有不同编译器设置、不同链接框架和库以及不同头文件的不同项目模板。如果您想构建一个简洁的 Objective-C 程序,但仍然使用 NSObject 之类的东西,请使用“Foundation”,您将自动获得一个 main.m 文件以及 Foundation 框架的编译器和链接器设置。