gpt4 book ai didi

java - 使用 std::map 从 c++ 调用带有参数 Map 的 Java 函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:49:08 25 4
gpt4 key购买 nike

如何调用Java需要 Map<String, String> 的函数作为 C++ 的参数当我有 std::map<std::string, std::string>在 C++ 中。我知道当参数是 int 等简单类型时如何从 C++ 调用 Java 函数,但如何调用 Map

t.env->CallStaticVoidMethod(t.classID, t.methodID, params);

有什么技巧可以实现吗?

使用分开的两个jobjectArrays of jstring并按索引粘合到 Java 函数中的 Map 还是有更优雅的解决方案?

最佳答案

如果 Java 函数接受 Map<String,String> ,您必须传递该类型的对象。如您所见,C++ std::map不是 Java map 。您可以复制您的 std::map<std::string,std::string>进入新构建的 Java Map<String,String>在调用 Java 函数之前。

这将需要从 C++ 创建一个 Java Map(例如,一个 HashMap),并填充它。

关于java - 使用 std::map<std::string, std::string> 从 c++ 调用带有参数 Map<String, String> 的 Java 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32400002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com