用SWIG生成Python可用的扩展DLL时,需要改扩展名成pyd才可让py直接调用
也可在exe装载DLL,并显式调用生成的cxx文件中的函数SWIG_init(),然后在exe中即可直接使用Py调用该DLL中函数
Py_Initialize();//先初始化python
SWIG_init(); //SWIG初始化
使用完最后
Py_Finalize(); //谁初始化谁释放原则,实际使用中需要存一个值判定是否是自己初始化的
没有调用Py_Finalize()则Swig生成的CXX文件中的释放函数PySwigClientData_Del()不会被调用到

本文介绍如何使用SWIG生成Python可用的扩展DLL,并详细解释了如何通过更改扩展名为pyd来使Python可以直接调用这些DLL。此外,还探讨了在EXE中加载DLL并通过调用SWIG_init()函数来直接使用Python调用DLL中的函数的方法。
454

被折叠的 条评论
为什么被折叠?



