项目小记

在一次项目中,由于长时间未使用C++调用Python,遇到了运行报错的问题。最初误认为是路径设置错误,但经过排查,发现关键在于忘记调用初始化函数。此外,还发现Visual Studio在新建项目和解决方案时,若不取消“为解决方案创建目录”,会产生两个目录结构,导致源文件和调试工作目录与生成的exe文件位置不同,这对调试和部署可能产生影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

又用到c++调用python,好久没用,居然生疏了,出了一点小纰漏。原本很简单的代码,运行始终报错。

PyObject *pModule = NULL;
pModule = PyImport_ImportModule("algorithms");

报错如图,中断指向上面的代码第二行。

以为是路径设置的问题,添加代码

PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('./')");

 报错如图,中断指向上面的代码第二行。

最后才发现,问题出在没有调用初始化函数上。添加后就不报错了。

Py_Initialize();

此外有点小发现,以前从来没注意过,以后注意:在vs中新建项目和解决方案时,如果没有取消“为解决方案创建目录”,会有两个目录。即在项目目录下又有一个解决方案目录。源文件和调试时的工作目录是解决方案目录,如"Project2/Project2/"目录下;生成的exe文件在项目目录,即“Project2/”目录下。如图所示。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值