在C++类中声明C#全局变量需要用到关键字gcroot,如下例中调用了命名空间和类名均为USB7816的C#DLL程序。
#using "USB7816.dll"
class CUSB7816Manager{
public:
CUSB7816Manager();
~CUSB7816Manager();
public:
gcroot<USB7816::USB7816^> pUSB7816;
}CUSB7816Manager::CUSB7816Manager()
{
pUSB7816 = gcnew USB7816::USB7816();
}void CUSB7816Manager::GetDllInformation()
{
String ^str;
str = pUSB7816->Author;
MarshalString(str,strAuthor);
}
本文介绍了一个具体的示例,展示了如何在C++类中声明并使用C#的全局变量。通过gcroot关键字及命名空间USB7816,实现了跨语言的数据交互。

8076

被折叠的 条评论
为什么被折叠?



