【发布时间】:2009-01-20 20:17:54
【问题描述】:
我正在阅读关于 iPhone 编程的post,我注意到关于 Objective C++ 的讨论,帖子中显示的代码看起来主要像 Objective-C,但也有几个 C++ 中的 sn-ps。真的可以用 C++ 编写 Cocoa 吗?
【问题讨论】:
标签: c++ objective-c cocoa macos objective-c++
我正在阅读关于 iPhone 编程的post,我注意到关于 Objective C++ 的讨论,帖子中显示的代码看起来主要像 Objective-C,但也有几个 C++ 中的 sn-ps。真的可以用 C++ 编写 Cocoa 吗?
【问题讨论】:
标签: c++ objective-c cocoa macos objective-c++
除了其他 cmets,我要补充一点,Objective-C++ 与“从 C++ 编写 Cocoa”并不完全相同,因为不涉及 C++ 到 Cocoa 的桥接。
在 Objective-C++ 中,您完全使用 Objective-C 对象/语法对 Cocoa API 进行编程。 Cocoa API 保持不变,因此您需要以相同的方式与其通信(使用 Objective-C 字符串、Objective-C 数组和 Objective-C 对象)。
与普通的 Objective-C 相比,Objective-C++ 的不同之处在于,您可以也使用 C++ 对象(包含 Objective-C 对象、包含在 Objective-C 对象中或仅在旁边) Objective-C 对象)。
【讨论】:
是的。基本上,Objective-C 是一组类似于 Smalltalk 的 C 对象扩展。Objective C++ 是将这些相同的扩展应用于 C++ 的结果。这为您提供了一种具有两种不同对象模型的语言。
Apple 的 xcode 开发环境同时提供了 Objective-C 和 Objective-C++ 编译器。
【讨论】:
这实际上是 Apple 文档中的一个彩蛋,用于检查是否有人在阅读 - 同一个人编写了 WO4 指南中的所有 WebScript 文档。
是的,有 Objective-C++。
【讨论】:
是的,有。
【讨论】: