%pythonappend
和%pythonprepend
的SWIG文档过于简短。我想知道如何访问那些python块中的返回值和输入参数。例如,以下是SWIG doc的一个例子:
%module example
// Add python code to bar()
%pythonprepend Foo::bar(int) %{
#do something before C++ call
%}
%pythonappend Foo::bar(int) %{
#do something after C++ call
%}
class Foo {
public:
int bar(int x);
}
如何在此处打印输入参数x
和bar
的返回值?
谢谢!
答案 0 :(得分:2)
访问输入参数:
print(args)
访问返回值:
print(val)
警告:强> 我通过阅读生成的.py文件得到了这个答案。不幸的是,似乎没有官方支持访问参数和返回值。这种方法可能会在将来的swig版本中破坏您的代码。