使用 C# 和 C++/CLI 开始互操作的最佳在线指南/教程是什么?我正在寻找将 C# 制作的结构传递给 C++/CLI 的良好指南。我看到的许多教程都没有涉及将 C# 中制作的自定义结构传递给 C++/CLI。有什么建议么 ?
谢谢。
你找不到很多教程的原因是它真的什么都没有。您将托管结构从 C# 传递到 C++/CLI,就像传递给另一个 C# 类/方法一样
假设你在 C# 中有结构:
public struct TheStruct
{
public int i;
public String str;
}
您将在 C++/CLI 中编写如下所示的方法:
// *.h
void PassStruct(TheStruct ^myStruct);
// *.cpp
void classnamegoeshere::PassStruct(TheStruct ^myStruct)
{
int j = myStrict->i;
String ^localStr = myStruct->str;
}
所以,有几点注意...
您需要注意不要创建循环引用,因此您可能希望在 C++/CLI 中定义 TheStruct,在这种情况下,它看起来像:
公共参考结构 TheStruct { public: int i; 字符串 ^str; }
容易吗?