【立体匹配】C++调用Python3.6的配置


在用C++做立体匹配算法的时候,需要查看一些算法中间数据,如Matching Curve,由于Python在进行数据处理显示的时候非常方便,于是想用C++来调用Python的matplotlib进行数据显示。
我用的是visual studio 2017 + Python3.6,Python用的是Anaconda。

visual studio环境配置

在VS中新建一个C++控制台程序,配置相关的项目属性(注意是64位工程)
项目 -> 属性 -> C/C++ -> 常规 -> 附件包含目录(根据实际情况来定,我的是"D:\Anaconda3\include")
在这里插入图片描述
项目 -> 属性 -> 连接器 -> 常规 -> 附加库目录(我的是"D:\Anaconda3\libs")
在这里插入图片描述
项目 -> 属性 -> 连接器 -> 输入 -> 附加依赖项
在这里插入图片描述

QT环境配置

matplotlib画图实际上是调用了QT,因此需要配置QT的运行环境(不需要下载安装QT),否则会报

This application failed to start because it could not find or load the QT platform plugin "windows" in ""

解决办法是新建一个QT环境变量
在这里插入图片描述

其他坑

1.C++调用Python时,默认路径为项目生成目录(“x64\Release”),因此Python脚本应放在生成目录下,而不是工程目录下,不然会找不到脚本文件,这个可以通过如下代码验证

wcout<<Py_GetPath()<<endl

2.Python文件不能命名为test,否则找不到函数名
3.若Python中有语法错误,则不能导入,所以正确的做法是先在对应编译器中开发验证Python脚本,再使用C++进行调用
4.Debug工程会提示找不到python36_d.lib,在"Anaconda\libs"目录下,将python36.lib复制一份,并命名为python36_d.lib即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值