gpt4 book ai didi

iphone - 为什么以及何时应该在 iOS 应用程序中使用 C/C++ 代码?

转载 作者:可可西里 更新时间:2023-11-01 04:23:00 28 4
gpt4 key购买 nike

当我在 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 接口(interface)和/或使用 C 数据类型。

在超集和子集语言中都可以做的事情中,用 C 做一些事情的几个原因可能包括性能和可移植性。 Objective C 消息传递有少量运行时开销,完全不适合实时音频或视频图像处理等内部循环。为了可移植性,通常可以在 iOS、Linux、Android NDK 中使用封装良好的 C 代码、WebOS PDK 等。有时,OS 服务的 Objective C 包装器不会提供某些底层 C API 的所有灵 active 。

我认为将 C++ 用于 iOS 应用程序的唯一原因可能是使用一些遗留 C++ 代码并与该代码保持某种风格的一致性,以提高可读性、可维护性等。

对于性能或任何可移植代码重用并不重要的 iOS 应用程序,没有理由不只使用 Objective C(及其包含的 C 语言),因为这是最新的文档、工具、框架、和适用于 iOS 的 API 受支持。

关于iphone - 为什么以及何时应该在 iOS 应用程序中使用 C/C++ 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7974695/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com