我可以在 iOS 或 mac 应用程序中使用 C++ 代码吗?

Posted

技术标签:

【中文标题】我可以在 iOS 或 mac 应用程序中使用 C++ 代码吗?【英文标题】:Can I use C++ Code in iOS or mac application? 【发布时间】:2020-10-24 15:02:24 【问题描述】:

我有一个用 Ruby 编写的代码,我想将它转换为我的 androidios 应用程序都可以使用的库。我打算用 C++ 重写它,以便所有平台都可以使用这个库(包括嵌入式传感器和小型设备和手机)

我知道 Android 可以通过 NDK 使用基于 C++ 的代码,但 iOS 设备可以使用 C++ 库代码吗?还是我必须将其转换为 Objective-C?

【问题讨论】:

【参考方案1】:

是的,所有流行平台(Android、iOS/watchOS/tvOS、macOS 和 UWP/Windows 10)都完全支持 C++(甚至是最新版本,如 c++17)。您必须面对的唯一主要事情是所谓的“粘合层”代码,它必须为每个平台单独编写,以让您的代码与操作系统原生语言交互。对于将是基于 C 的 Java 本地接口 (JNI) 的 Android,对于将是 Objective-C++ 类的 Apple 操作系统和对于 UWP 的 MIDL/cppwinrt。

资料来源:大约 10 年的开发/更新/维护基于 C++ 的跨平台应用程序。

请随时询问细节,我会更新我的答案。

【讨论】:

以上是关于我可以在 iOS 或 mac 应用程序中使用 C++ 代码吗?的主要内容,如果未能解决你的问题,请参考以下文章

使用 MAC ios 连接到 BLE 设备

在iOS中获取设备ID或Mac地址[重复]

iOS 7中MAC地址使用问题[重复]

通过 Mac 终端在 iOS 设备文件上安装我的 .app 发布文件

iOS 开发者计划和/或 Mac 开发者计划 [关闭]

目标 C 和 ARC