C++的这句代码typedef void* uecHandle;C#中应该怎么写

如题所述

这个是一个指针函数,用于回调的吧。后面应该还会有一句代码 uecHandle funcA;这个funcA应该是传入回调函数里面的。 C#里面应该定义成 delegate void uecHandle(这个里面的参数要和你C++中的函数原型一一对应)。具体是用比较麻烦然后用这个uecHandle FunA=new uecHandle(funA)。注意这两个函数名字的区别,FunA是用来传递到回调函数里面的参数名称,funA是你具体的功能实现函数,参数要和uecHandle一致。另外要注意的是参数类型的转换。尤其是C++里面定义了unsigned xx类型,一定要注意,否则会出错如果不是用于回调,其实就相当于给这个指针函数起个别名,没有太大的意义啊。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-05
就是一个IntPtr而已,学了c++应该知道是个内存地址。类似Handle的东西。

c++结构体转换为C#结构体
c++:HANDLE(void *) --- c#:System.IntPtr c++:Byte(unsigned char) --- c#:System.Byte c++:SHORT(short) --- c#:System.Int16 c++:WORD(unsigned short) --- c#:System.UInt16 c++:INT(int) --- c#:System.Int16 c++:INT(int) --- ...

相似回答