Swig:将返回类型 std::string 转换为 java byte[]

发布于 2024-10-16 15:06:23 字数 133 浏览 1 评论 0原文

我有一个返回 std::string 的 C++ 方法。我正在使用 SWIG,我想向 SWIG 添加逻辑,以使返回的 std::string 在 Java 中作为 byte[] 接收。

如果这是可能的,我该怎么做?

谢谢

I have a C++ method that returns a std::string. I am using SWIG and I want to add logic to SWIG to make the std::string that is returned, be received in Java as a byte[].

If this is possible, how can I do this?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

离旧人 2024-10-23 15:06:23

SWIG 附带了许多 C++ 结构的预先编写的接口文件。在 SWIG 的 Lib 目录中可以找到许多语言的文件,包括 Java。

在您的 SWIG 接口文件中添加 %include 。检查 SWIG 的 Lib/Java 目录以获取对其他构造的支持。

SWIG comes with pre-written interface files for many C++ constructs. The are found in SWIG's Lib directory for many languages, including Java.

Add %include <std_string.i> in your SWIG interface file. Check SWIG's Lib/Java directory for support for other constructs as well.

无戏配角 2024-10-23 15:06:23

std::string 有一个成员函数 c_str 基本上就是这样做的。编写一个包装函数来调用您的函数并返回相应的 C 字符串可能是有意义的。

std::string has a member function c_str that does essentially that. It would probably make sense to write a wrapper function that calls your function and returns the corresponding c string.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文