当前位置: 首页 > news >正文

XCode16中c++头文件找不到解决办法

XCode16中新建Framework,写完自己的c++代码后,提示“<string> file not found”等诸如此类找不到c++头文件的错误。
工程结构如下:
在这里插入图片描述

App是测试应用,BoostMath是Framework。基本结构可以参考官方demo:Mix Swift and C++ within a single framework target。

按照官方文档,要启用swift和c++混编,要在App和BoostMath改为如下设置:
在这里插入图片描述
import到伞头文件BoostMath.h里的其他头文件也要改为public的。例如
在这里插入图片描述
那么要在BoostMath的Build Phase中将math_func.hpp也改为public的。
在这里插入图片描述
这样,如果只用c语言来写public header,就没问题了。但是如果public header需要用c++来写,那么还需要一个设置:

在这里插入图片描述
注意要在App和Framework中都设置这项。
这里默认是objective-c objective-c++,那样的话是无法找到c++头文件的,需要删除objective-c。猜测是混编的桥接文件是c或者oc的,在oc时代与c/c++混编的话,如果是oc文件引入c++文件也会出现c++头文件找不到的错误,目前网上出现这种问题基本都是提示是否是mm文件引用了c++文件。


http://www.mrgr.cn/news/59350.html

相关文章:

  • SQLI LABS | Less-12 POST-Error Based-Double quotes-String-with twist
  • 第二十六节 直方图均衡化
  • S-Function
  • Python | Leetcode Python题解之第514题自由之路
  • Leetcode刷题笔记13
  • 安全日志里提示:C:\Windows\System32\dasHost.exe
  • mysql5.7.44 arm 源码编译安装
  • Linux常用命令1
  • python源码编译—Cython隐藏源码(windows)
  • [dasctf]howtodecompile
  • xlnt加载excel报错:‘localSheetId‘ expected
  • 【Spring】控制反转 依赖注入(本文内容由大模型生成)
  • 安卓基础001
  • HarmonyOS NEXT初级案例:网络数据请求
  • uni-app应用级生命周期和页面级生命周期
  • 动态IP是什么?
  • Qt Creator中的项目栏
  • 说说SQL调优
  • 软考系统分析师知识点二四:错题集11-20
  • 【FreeRL】TD3和SAC的实现