如何将字符串传递给C++;使用SWIG生成的接口从Java获取函数 我有一组C++函数,它们以C STD:String作为函数参数。
我想把java字符串传递给这些函数。我在java和C++之间生成了一个Sigg JNI接口。我可以很好地看到无参数构造函数,但是如果我尝试用构造函数中的字符串参数编译java,我会得到“找不到符号”,我认为这是因为类构造函数的定义方式很有趣如何将字符串传递给C++;使用SWIG生成的接口从Java获取函数 我有一组C++函数,它们以C STD:String作为函数参数。,java,c++,swig,Java,C++,Swig,我想把java字符串传递给这些函数。我在java和C++之间生成了一个Sigg JNI接口。我可以很好地看到无参数构造函数,但是如果我尝试用构造函数中的字符串参数编译java,我会得到“找不到符号”,我认为这是因为类构造函数的定义方式很有趣 你如何解决这个问题?打字图就是答案吗?java java C++ C++ java方法中,如果你有一个小函数集,那么你可以简单地把C++的方法包起来,这些方法使用STAR::String,这些方法使用char *并用Java字符串从Java调用它们,因为Ja
你如何解决这个问题?打字图就是答案吗?java java C++ C++ java方法中,如果你有一个小函数集,那么你可以简单地把C++的方法包起来,这些方法使用STAR::String,这些方法使用char *并用Java字符串从Java调用它们,因为Java字符串C++ ++ char之间的默认类型映射将按预期工作。您还可以向interface.i文件中添加类似的内容:
%include "std_string.i" // for std::string type-maps
#include <string>
%包括“std_string.i”//std::string类型映射
#包括
我认为这将适用于你的情况,没有任何修改。
有关更多信息,请参阅和
std_string.i和std_basic_string.i文件可以在安装swig的地方找到。这
在旧版本的SWIG中可能不可用(我使用的是2.0.1)