2

我有一个库,其中包含用 C++ 编写的类和公共方法。

我想从一个用 C++ 和 Qt 编写的交互式程序中,将命令发送到 Python 语言的解析器,然后将它们转换为调用我的库的方法和函数。

类似于 Octave/Matlab 中所做的事情,字符串由解析器处理,然后在内部执行命令。

在我的 C++ 库的某个地方,我有一个函数

int myFooCPPfunction(int value)
{
    return value*value;
}

然后在我的程序执行期间,我想启动一个控制台并输入 Python 语法:

for i in range(0,20):
    print("%d" % myFooCPPfunction(i))

例如,我给出的命令会更新程序的内部状态。

我认为这是编写链接到 C++ 的 Python 代码的问题。在我看来,像 boost::python 之类的东西已经做到了……我问你的建议,哪个是编写绑定的更好方法。

第二点:如何将该东西集成到从 Qt 应用程序启动的交互式 shell 中?一些像 QConsole 这样的在线项目应该做类似的事情,但是 QConsole 似乎是一个非常过时的项目。

谢谢!

4

1 回答 1

3

PythonQt正是为此目的而创建的。

于 2012-05-29T06:34:28.103 回答