【发布时间】:2011-11-20 08:43:48
【问题描述】:
我已经将 Python 和 C++ 一起使用了一段时间,但从未尝试过实现以下内容:
我喜欢 python 用户能够编写类似的东西:
def foo(a,b):
return a+b
myclass.myfunc(foo)
其中 myclass 是使用 Boost.Python 向 python 公开的 c++ 类,其方法之一 (myfunc) 采用以下函数:
int func(int,int)
签名,仅此而已。
这可能吗?
我正在考虑声明:
myclass::myfunc(boost::python::object)
并提取 typedef 的函数签名,但我只是猜测..
也许有更好/可行的方法来做到这一点,也许有一些“功能”对象?
【问题讨论】:
-
也许更好的标题是“python 函数作为 boost::python c++ 暴露类的参数”
-
这是一个有趣的问题,我很想知道答案。
标签: c++ python boost-python