.NET中对象引用的大小是多少?在x86,x64和/或AnyCPU编译之间是否有所不同?
如果有所作为,我个人对C#感兴趣。
.NET中对象引用的大小是多少?在x86,x64和/或AnyCPU编译之间是否有所不同?
如果有所作为,我个人对C#感兴趣。
Answers:
引用本身基本上是一个指针。在32位OS上为32位,在64位OS上为64位。
被引用的对象的大小更加复杂。
为了确定指针大小,您可以使用System.Runtime.InteropServices.Marshal.SizeOf(typeof(IntPtr))
,或sizeof(IntPtr)
在不安全的环境。
编辑:
或者IntPtr.Size
。
对象引用基本上是指向包含对象属性的内存的指针。因此,参考是一个处理器字的长度-在32位平台上为32位,在x64上为64位。