我的目的是通过静态库重用一些 C++ STL 实现来进行 iOS 开发。
众所周知,iOS 设备基于 ARM6/7 系列,与 *86 系列的某些编译器选项不同。
对于移动开发,我们更喜欢跨不同平台重用一些C++代码,例如iOS、Android,甚至PC后端。
因此请在这里提问以了解为此目的的一些问题或限制。
谢谢
C++ STL 只是参考一些流行的版本,我不想涵盖所有 STL 库,我只是想了解这种情况下的一些流行问题。感谢您指出任何问题。
使用标准化工具的主要目的是实现可移植性。只要您按预期使用该库,而不依赖于标准之外的行为,将其移动到具有良好 C++ 实现的任何平台就不会有任何问题。
iOS 上的标准库实现与 Mac OS 上的相同。应该没有什么区别。
ARM 与 x86 应该没有任何区别。 C++ 标准库中称为 STL 的部分完全由模板组成,因此称为“标准模板库”。对高级数据结构进行模板化几乎排除了汇编语言技巧。
不 - 在为我之前的雇主工作时,我们使用了用 C++ 编写的整个协议栈(带有一些 STL),用于我们的桌面客户端来引导我们的 iPhone 客户端的开发。 效果很好。