许多项目都涉及C#调用C++的DLL。
这种工作分两个方面:
(1)在C#中对C++定义的用类型进行进行重写,主要是struct、#define等。
(2)在C#中引入C++的DLL,使用[DllImport("*.dll")] public static extern long api();进行说明。
在这两方面中,都需了解C++转成C#对应的数据类型,本文章对此进行说明,对于C#调用C++的DLL方法请参看其他文章。
C++ C#
int(LONG) Int32
BYTE Byte
WORD(unsigned short) UInt16
DWORD(unsigned int) UInt32
char Char
HANDLE(void*) IntPtr
BOOL Boolean
unsigned long*(DWORD*) ulong[]
unsigned char* byte[]
char* string
本文介绍如何在C#中调用C++的DLL文件时进行类型转换,包括基本数据类型如int、char等,以及复杂类型如HANDLE、BOOL等的对应转换方法。
2048

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



