gpt4 book ai didi

c# - 我如何将 C# string[] 编码(最好在 SWIG 中)到 C++ string*?

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

我是 C# 编程的新手,正在尝试调用 C++ 中的包装函数。

在 C++ 中,我有以下原型(prototype)的函数

string* swap(string* ptr1, string*ptr2){
//swap the array of string
return ptr2;
}

如何将此函数包装到 C# 中(最好使用 SWIG,但不是必需的)?

最佳答案

我对 Java 有同样的问题。

对于 Java,我没有发现任何预先打包且易于使用的东西。我必须定义自己的类型映射。

如果您没有得到关于 C# 的任何更好的答案,您可以从 SWIG: How to wrap std::string& (std::string passed by reference) 中描述的 SWIG/C++ 代码开始。 .

您需要替换对 Java 类型、JNI 方法(包括对“jenv”的引用)和“JavaThrowException”的引用。

这些来自 SWIG 的文件也可能为 C# 提供一些相关的示例代码:

  • 痛饮/Lib/csharp/std_string.i
  • swig/Lib/csharp/typemaps.i

关于c# - 我如何将 C# string[] 编码(最好在 SWIG 中)到 C++ string*?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3825974/

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