python中调用c++类及方法,为什么没有提高速度? 50
我c++写了两个类,类里有一些函数,然后用boost.python打包供python程序调用,为什么调用c++类的python和全部用python实现的运行速度差不多?我...
我c++写了两个类,类里有一些函数,然后用boost.python打包供python程序调用,为什么调用c++类的python和全部用python实现的运行速度差不多?我全部改成c++运行速度却可以提高非常多,想问一下python调用c++类背后的机制是什么?全部转换成了Python吗??
展开
1个回答
展开全部
肯定不是 转成Python啊。。。
首先你写成C++的一定要是程序中比较耗时的部分啊。
调用就是Python解释器加载C语言编译成的动态链接库。
解释器把Python的类型参数转化为C中的类型,传递给被调用的函数。
然后把返回的结果再转为Python中的类型。
首先你写成C++的一定要是程序中比较耗时的部分啊。
调用就是Python解释器加载C语言编译成的动态链接库。
解释器把Python的类型参数转化为C中的类型,传递给被调用的函数。
然后把返回的结果再转为Python中的类型。
追问
我是用了boost.python把c++类转换成了pyd文件,然后在python中import该pyd,调用该pyd和调用dll是一样的原理吗?
追答
额,实际的内容还是dll啊,算又包装了一下吧,专门给解释器用吧。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询