Получение размера поля в байтах с помощью C#

В зависимости от потребностей c-sharp опрашиваемого Marshal.SizeOf byte может дать или не дать вам visual-c# то, что вы хотите. (Отредактировано c#.net после того, как Джон Скит reflection опубликовал свой ответ).

using System;
using System.Runtime.InteropServices;

public class MyClass
{
    public static void Main()
    {
        Int32 a = 10;
        Console.WriteLine(Marshal.SizeOf(a));
        Console.ReadLine();
    }
}

Обратите .cs-file внимание, что, как говорит c# jkersch, sizeof можно использовать, но, к csharp сожалению, только с типами c-sharp значений. Если вам нужен c#-language размер класса, выберите Marshal.SizeOf.

Джон c# Скит объяснил, почему ни reflection sizeof, ни Marshal.SizeOf c-sharp не идеальны. Думаю, опрашиваемый c#.net должен решить, приемлем ли .cs-file то или иное для его проблемы.

c#

reflection

byte

2022-10-27T02:22:49+00:00