我现在必须将 C++ 代码移植到 iOS,尝试通过原始 C++ 代码构建静态库并在 iOS 上加载该库。因为原始代码很重,所以我开始了一个小测试来验证我的步骤是否可行。
首先我需要构建库(.a),它打印一些字符串。我编译以下代码并生成一个库(.a)文件
//talk.h
...
#include <iostream>
class Talk {
Talk();
void printHello();
void printWord(char*);
};
//talk.cpp
#include "talk.h"
using namespace std;
void Talk::printHello() {
cout << "Hello World";
}
void Talk::printWord(char* word) {
cout << "Hello" << word;
}
我尝试做的第二步是为 iOS 应用程序打开一个新项目,然后设置库文件的链接,还包括相应的“talk.h”头文件。但是,即使我成功构建库,头文件也会发生一些错误。
这些错误表明
- 找不到“iostream”文件
- “未知类型名称‘类’;你的意思是‘类’吗?
- 任何其他错误...
我尝试将controller.m 重命名为controller.mm,但这并不能解决问题
如何导入用 C++ 编写的头文件以在 iOS 上使用库?谢谢