Mark-Swig和python -(1)C/C++函数的简单封装

本文介绍了如何使用Swig将C/C++代码封装为Python第三方库,详细阐述了从编写C/C++代码到创建.i文件、运行swig命令、编译链接及设置setup.py文件的全过程,帮助开发者理解并实现跨语言接口。
摘要由CSDN通过智能技术生成

最近在使用swig 封装C/C++程序作为python的第三方库,在此mark一些踩到的坑和需要注意的细节。

前言

swig(Simplified Wrapper and Interface Generator)能够很方便将C/C++代码包装成其他语言的接口,具体可以查看官网手册SWIG-4.0 Documentation。本文主要记录下在使用swig封装C++作为python第三方库时所遇到的一些问题,以便以后使用时方便查找。

测试环境:Ubuntu 18.04.5 LTS +Python 3.6.9+SWIG 4.0.2


流程

1)按照C/C++标准写代码(建议最好将函数声明,类声明,结构声明等写单独的.h文件里,函数体等写在.cpp文件中,这样方便后面封装,最好不要含有main函数,需要特殊封装,一般也用不到)按照这种方式组织的C/C++文件,直接通过C/C++的编译,可以运行就行。封装不会改变原来C文件的结构。

例如 头文件 example.h 文件

/* File: example.h */
int fact(int n);

函数定义文件  example.c

/* File: example.c */
#includ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值