为什么C#中要设计IntPtr?

示例代码:
IntPtr vertex = someObj.Get().Lock(0, someObj.Get().GetSizeInBytes(), HardwareBuffer.LOCKOPTIONS.HBL_DISCARD);
 
C#中的IntPtr相当于C++中的int*,之所以在C#中存在IntPtr完全是为了兼容基于C/C++的DLL或LIB,通过上面的代码可以判断Lock的方法的返回值是一个整型指针.
 
其实不只是IntPtr,还可以是其他的***Ptr,但核心内容是任何***Ptr中里面必然包含一个IntPtr,只是被***Ptr封装了.
posted @ 2015-03-23 18:41  一名老程序员  阅读(732)  评论(0编辑  收藏  举报