我必须使用从本地 C++ 应用程序用 C# .NET 制作的类/程序集。我想我需要在 C++/CLI 中创建一个包装类,它将在头文件中公开本机方法,但根据需要使用 .NET 类。我不清楚的是如何将数据类型从 .NET 转换为标准 C++ 类型。
有人有一些示例代码可以学习吗?
我发现的唯一文字是:http: //msdn.microsoft.com/en-us/magazine/cc300632.aspx
但是文本很旧(使用托管 C++,而不是 C++/CLI),而且很多事情还不清楚
我必须使用从本地 C++ 应用程序用 C# .NET 制作的类/程序集。我想我需要在 C++/CLI 中创建一个包装类,它将在头文件中公开本机方法,但根据需要使用 .NET 类。我不清楚的是如何将数据类型从 .NET 转换为标准 C++ 类型。
有人有一些示例代码可以学习吗?
我发现的唯一文字是:http: //msdn.microsoft.com/en-us/magazine/cc300632.aspx
但是文本很旧(使用托管 C++,而不是 C++/CLI),而且很多事情还不清楚
是的,您需要使用 C++/CLI 围绕您的托管程序集构建一个包装器。
对于混合本机和托管类型,您可能需要查看本文以获取示例代码。
原始类型有 int、float、byte 为您转换。但是其他类型有String必须自己做。例如,如果您在 char* 上有一个本机指针,那么您的 C++/CLI 类必须将其转换为字符串才能传递给您的托管 C# 程序集。