我试图在PHP中使用我的C ++库和SWIG,一切正常,我精确地生成了我的共享对象。我还在我的接口文件中包含了phppointers.i和std_string.i。但是当我想调用我的C ++方法时,它们的输入节中有引用或指针参数,方法就不能正常工作,或者我遇到了一些错误:
Fatal error:no matching function
例如我的一个方法声明如下:
int func(string &ptr,bool space=true) const;
但是当我在我的php代码中将此方法称为:
$bf->func('abcd',true);
我收到了这个错误:
Fatal error:no matching function
我尝试用其他方式调用此函数:
$str = 'abcd';
$bf->func(&$str,true);
但是这次我遇到了以下错误:
Fatal error: Call-time pass-by-reference has been removed
我很困惑,如果有人可以帮我解决这个问题,我真的很感激。