小编Eon*_*vin的帖子

boost python重载operator()

我想使用Boost :: Python绑定operator(),但我真的不知道如何做到这一点.考虑这个例子:

C++:

class Queuer
{ 

public:
void Queuer::operator()(const qfc::Queue & iq, const qfc::Message & im) const;
void Queuer::operator()(const qfc::Agent & ia, const qfc::Message & im) const;
// some other overloaded operator() methods

};
Run Code Online (Sandbox Code Playgroud)

所以在Python脚本中,导入我正在使用的模块(称为qfc)后,我想这样做:

蟒蛇:

>>> queuer = qfc.Queuer()
// instantiating a Message an Agent and a Queue object
>>> queuer(queue,message)
>>> queuer(agent,message)
>>> ...
Run Code Online (Sandbox Code Playgroud)

你对这个怎么办了吗?也许用boost :: python调用<>?

谢谢你,凯文

binding operator-overloading boost-python

5
推荐指数
1
解决办法
1446
查看次数