Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将字符串传递给C++;使用SWIG生成的接口从Java获取函数 我有一组C++函数,它们以C STD:String作为函数参数。_Java_C++_Swig - Fatal编程技术网

如何将字符串传递给C++;使用SWIG生成的接口从Java获取函数 我有一组C++函数,它们以C STD:String作为函数参数。

如何将字符串传递给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++之间生成了一个Sigg JNI接口。我可以很好地看到无参数构造函数,但是如果我尝试用构造函数中的字符串参数编译java,我会得到“找不到符号”,我认为这是因为类构造函数的定义方式很有趣


你如何解决这个问题?打字图就是答案吗?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)