麻辣彼得 2013-12-24 13:23 采纳率: 0%
浏览 2178

object c 怎么同时使用 object-c object-c++两种语言编译?

我的项目要引入两个第三方类库,一个要object 编译能通过,另一个要object-c++编译才能通过,但这两种语言才编译器中只能选一种,但是两个类库无论你改了哪个都报错,该怎样解决?

  • 写回答

1条回答

  • spmsv 2015-01-18 09:54
    关注

    用C编译的库用OC,用C++编译的库用OC++,为了避免冲突,最好将Compile Sources As设置为"According to File Type",将需要用到C++编译的
    库的m文件改名为mm,Objective-C天然支持C语言混编,只是对C++不怎么友好。注:使用"According to File Type"时,需要将C方言设置为GUN89
    或者更高(再说C89的标准有些确实比较恶心),不然系统自带的OC库会编译不通过。
    附图:图片说明

    附带一些静态库编译说明:
    编译静态库时,如果含有cpp文件,则必须使用"According to File Type"或者Objective-C++来编译静态库。用户在使用库时,如果没选"According to File Type"或者是Objective-C++编译会不通过的,使用Objective-C++则不需改后缀,使用"According to File Type"则需要改后缀。"According to File Type"方式灵活,Objective-C++则限制了整个工程。

    希望我上面的回答应该对你有所帮助!

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog