c++转python

        前两天有个一万多行的C++项目需要转PYTHON,逻辑非常复杂,要想看懂逻辑再用PYTHON写一遍预期时间比直接转要长,所以大家决定转PYTHON,遇到一些坑,这里简记一下。

        最大的坑是数据结构,PYTHON没有数组,只能用LIST,C++的函数里数组直接传地址进去,可以进行各种操作,尤其是二维数组。PYTHON只能用LIST,二维数组只能嵌套LIST。C++可以传一个类对象的引用进一个函数。PYTHON得把这个类对象传进去,改变以后再传出来外面还得再=一下。其实PYTHON也可以传引用。传引用进一个函数注意事项:
1、不能在函数内部使用param = []或者param = list_other
2、不能在调用处传param + 3之类的
出现第2种情况时,可以使用一个零时arg_param = param[3:]使用arg_param传入然后函数调用出来以后再循环把值赋到原来的parm里。当然如果是const最好了,返回以后外面就不用再赋值了。

小技巧:第一步:先把C++代码翻译成“类似PYTHON的C++"中间代码。第二步:把这种中间代码翻译成PYTHON。第一步走完以后可以进行一次逻辑回测,看是否还能正常工作。

小技巧:第一步中尽量把传的数组能CONST的统统CONST掉,这其实是C++的编辑习惯问题,尽量养成能CONST的(无论传指针还是引用)都CONST。这样PYTHON就可以非常放心的直接传引用进去,里面不改变即可。

小技巧:CopyMemory拷贝数组,统统改成:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值