2011-09-07 172 views
2

使用Boost.Python,我怎样才能在另一个模块中定义一个模块(或者说,就好像它位于一个文件夹中一样)?Boost.Python:模块内部模块

+2

我没有时间写一个正确的文章,但我有一个链接:(http://goo.gl/NXsjf)与你需要的。如果你第一次接触它,请随意做一个适当的写作。 –

回答

0

如何将它放入子文件夹?认真的说,我认为这是Python如何管理包层次结构并对导入进行查找。请参阅官方文档here

你的问题:我还没有偶然发现在模块内部声明模块的问题。我不认为Boost.Python是可能的,但我不是100%确定的。

+0

将它放在子文件夹中不是一个选项,因为我嵌入Python,我没有扩展它。 –

+0

您的异议没有意义,除非我误解。如果你嵌入python,但在'boost :: python'中编写模块,那么你需要使用你的新模块来扩展(嵌入的)python。 – eudoxos

0

我想试试这个:

using namespace boost::python; 
object moduleA=import("moduleA"); 
object moduleB=import("moduleB"); 
moduleA.attr("moduleB")=moduleB; 

,如果你真的需要它在C++中。这种阅读器可以像python一样写一个练习;-)