//c++:unsigned long
变量名
---- c#:ulong
变量名
//c++:char
变量名
---- c#:byte
变量名
//C++中一个字符用一个字节表示,C#
中一个字符用两个字节表示
//c++:char 数组名[数组大小] ---- c#:MarshalAs(UnmanagedType.ByValTStr,
SizeConst = 数组大小)]
public string 数组名; ushort
//c++:char * ---- c#:string
//
传入参数
//c++:char * ---- c#:StringBuilder
//
传出参数
//c++:char *
变量名
---- c#:ref string
变量名
//c++:char *
输入变量名
---- c#:string
输入变量名
//c++:char *
输出变量名
---- c#:[MarshalAs(UnmanagedType.LPStr)] StringBuilder 输出
变量名
//c++:char ** ---- c#:string
//c++:char **
变量名
---- c#:ref string
变量名
//c++:const char * ---- c#:string
//c++:char[] ---- c#:string
//c++:char 变量名[数组大小] ---- c#:
[MarshalAs(UnmanagedType.ByValTStr,SizeConst=数组大小)] public string 变量名;
//c++:struct
结构体名
*
变量名
---- c#:ref
结构体名 变量名
//c++:
委托 变量名
---- c#:
委托 变量名
//c++:int ---- c#:int
//c++:int ---- c#:ref int
//c++:int & ---- c#:ref int
//c++:int * ---- c#:ref int
//C#中调用前需定义 int
变量名
= 0;
//c++:*int ---- c#:IntPtr
//c++:int32 PIPTR * ---- c#:int32[]
//c++:float PIPTR * ---- c#:float[]
//c++:double**
数组名
---- c#:ref double
数组名
//c++:double*[]
数组名
---- c#:ref double
数组名
//c++:long ---- c#:int
//c++:ulong ---- c#:int
//c++:UINT8 * ---- c#:ref byte
//C#中调用前需定义 byte
变量名
= new byte();
//c++:handle ---- c#:IntPtr
//c++:hwnd ---- c#:IntPtr
//c++:void * ---- c#:IntPtr
//c++:void * user_obj_param ---- c#:IntPtr user_obj_param
//c++:void *
对象名称
---- c#:([MarshalAs(UnmanagedType.AsAny)]Object 对象名称
//c++:char, INT8, SBYTE, CHAR ----
c#:System.SByte
//c++:short, short int, INT16, SHORT ----
c#:System.Int16
//c++:int, long, long int, INT32, LONG32, BOOL , INT ----
c#:System.Int32
//c++:__int64, INT64, LONGLONG ----
c#:System.Int64
//c++:unsigned char, UINT8, UCHAR , BYTE ---- c#:System.Byte
//c++:unsigned short, UINT16, USHORT, WORD, ATOM, WCHAR , __wchar_t
---- c#:System.UInt16
//c++:unsigned, unsigned int, UINT32, ULONG32, DWORD32, ULONG, DWORD, UINT