windows C++ 生成动态库+静态库  (11条消息) C++生成和使用库文件_shaojunbo24的博客-CSDN博客

编译生成中间文件obj

(11条消息) C/C++中的Obj文件_fancy_sky的博客-CSDN博客_c++ obj

linux下链接库的编译与链接

(11条消息) gcc/g++ 链接库的编译与链接_surgewong的博客-CSDN博客_g++ 使用动态库

python 调用C++ 和 C++调用python

------------------------------------------------------------------------------------------------------------

补充:编译时尽量选择g++,编译动态库命令如下

g++ -o libHello.so -shared -fPIC libHello_so.cpp

Linux下python如何调用c++的代码,用ctypes方法。。_abc15766228491的博客-CSDN博客_linux python调用c++

用cmake编译容易出错

在创建C++动态库链接时,要用extern “C”{},用C的方式编译,否则会报错

定义的动态库里不能有main()方法,可以定义类,同时定义类的实例化,然后调用相关函数

python调用时,需要ctypes进行数据转化,python 与 C++ 之间,进行数据交换时进行转化

例一:传入str:需要通过 bytes 进行数据转化才能传入c++

strs = bytes(strs, 'utf-8')

ctypes优缺点及与C++之间数据结构转化

聊聊Python ctypes 模块 - 知乎 (zhihu.com)

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐