Насколько велика ссылка на объект в.NET?

Каков размер ссылки на объект в.NET? Отличается ли он между компиляцией x86, x64 и / или AnyCPU?

Если это имеет значение, я лично заинтересован в C#.

3 ответа

Решение

Сама ссылка в основном является указателем. 32 бита в 32-битной ОС, 64 бита в 64-битной ОС.

Размер объекта, на который ссылаются, является более сложным.

Для определения размера указателя вы можете использовать System.Runtime.InteropServices.Marshal.SizeOf(typeof(IntPtr)), или же sizeof(IntPtr) в небезопасном контексте.

Редактировать:

Или же IntPtr.Size,

Ссылка на объект в основном является указателем на память, которая содержит атрибуты объекта. Таким образом, длина ссылки - одно процессорное слово - 32 бита на 32-битных платформах и 64 бита на x64.

Другие вопросы по тегам