Ale*_*ush 5 c c++ iphone objective-c ios
何时,特别是当我在iOS平台上开发时,为什么要从Objective-C切换到C或C++.我确定我错过了一些东西,但据我所知,Apple希望开发人员在Mac/iOS环境中使用Objective-C,那么为什么我会使用C/C++呢?
但需要注意的是,我不是在谈论游戏开发.在游戏的情况下,我意识到有什么优势.如果我开发一个服务器的客户端或类似的东西(再次,不是游戏),我只是想要使用C.我需要的所有类都在Objective-C中.
Objective C 是 ANSI C 的严格超集,因此 Objective C 程序员很可能已经用 C 进行了大量编程。事实上,许多 Mac 和 iOS API(音频、图形等)都是 C 接口和/或使用 C 数据类型。
在超集和子集语言中都可以做的事情中,用 C 做一些事情的一些原因可能包括性能和可移植性。Objective C 消息传递存在少量运行时开销,完全不适合实时音频或视频图像处理等的内部循环。为了可移植性,通常可以在 iOS、Linux、Android NDK 中使用封装良好的 C 代码有时,OS 服务的 Objective C 包装器不会提供某些底层 C API 的所有灵活性。
我认为在 iOS 应用程序中使用 C++ 的唯一原因可能是使用一些遗留的 C++ 代码并与该代码保持一定的风格一致性,以提高可读性、可维护性等。
对于性能或任何可移植代码重用并不重要的 iOS 应用程序,没有什么理由不只使用 Objective C(及其包含的 C 语言),因为这是最新的文档、工具、框架和 API 的用途支持 iOS。
| 归档时间: |
|
| 查看次数: |
2547 次 |
| 最近记录: |