• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

c++ - 在 swift 代码中加载静态库

[复制链接]
菜鸟教程小白 发表于 2022-12-11 18:45:34 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个用 c++ 编写并用 xcode 编译的静态库(.a 文件)。 在我的 C++ 代码中:

extern "C" void startA(const char * szCmdLne){
 //bla bla
}

extern "C" void stopA(){
  //bla bla
} 

现在我正在用 swift 2(在 xcode 中)编写一个 iOS SDK。我想将库加载到 SDK 中并调用这 2 个函数(startA 和 stopA)。

正确的做法是什么?我尝试了桥接,但它不起作用。

谢谢!



Best Answer-推荐答案


按照以下步骤:

1) 在构建阶段链接 xcode 中的静态库 -> 将二进制文件与库链接。

2)在swift项目中添加库头文件。

3)需要创建一个桥接头来调用库Api using (File > New > File),然后选择“Source”并点击“Header File”。

4) 添加 无效停止A() startA(const char * szCmdLne) 在桥接头文件中。

现在,您应该可以从您的 swift 代码中调用这些 API。 检查此以获取更多详细信息: http://www.swiftprogrammer.info/swift_call_cpp.html#step2

关于c++ - 在 swift 代码中加载静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41912986/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap