鱼C论坛

 找回密码
 立即注册
查看: 4272|回复: 6

python 调用C++函数 传参问题

[复制链接]
发表于 2014-7-29 22:18:29 | 显示全部楼层 |阅读模式
2鱼币
python 调用C++函数,C++函数的参数类型是pyobject*,其实是一个结构体数组
类似于
#define NUM 32
stuct A
{
    int a;
    int b;
};
struct B
{
    int len;
    A ab[NUM];
}
请问在python中如何将这个结构体数组表示出来并传给 C++函数。
我在python中用类表示的
class A:
   def init(self):
   self.a=0
   self.b=0
class B:
   def init(self):
   self.len =0
   self.ab=[]
但是提示
new style getargs format but argument is not a tuple
第一个问题是我用类表示结构体对不对,
第二个问题我该怎样做。
python新手,没有多的鱼币,跪求不吝赐教

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-30 02:45:46 | 显示全部楼层
不懂。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-30 11:01:08 | 显示全部楼层
不懂诶~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-30 12:25:32 | 显示全部楼层
还没有到那种境界。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-30 21:07:29 | 显示全部楼层
本帖最后由 Seandor 于 2014-7-30 21:16 编辑

http://www.cnblogs.com/vamei/archive/2012/07/08/2581264.html  这里面详细介绍了python函数参数传递。
我看你init前后的下划线都没有,肯定不对啊。你这个问题,直接传递那个类为参数就好了,都用不到包裹参数。再想想,其实你根本不用那个结构体,用列表才是pythoner通常会做的事。别学个C++,看什么都是C++, 要学会转换思维。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-30 21:42:27 | 显示全部楼层
class A:
    def init(self,a,b):
    self.a=a
    self.b=b
class B:
    def init(self,len,ab=[]):
    self.len =len
    self.ab=ab
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-30 22:15:05 | 显示全部楼层
关注这个帖子,期待大神解决
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 18:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表