Как определить размер заполненной структуры? - C#
Формулировка задачи:
Доброго времени суток Есть структура
После заполнения полей структуры необходимо определить ее размер в байтах. Пробовал SizeOf - не подходит.
public struct dataCFG
{
public string serialNumDdevice;
public ArrayList numWhiteListAbonent;
}
public dataCFG _dataCFG = new dataCFG();Решение задачи: «Как определить размер заполненной структуры?»
textual
Листинг программы
class Program
{
const int ParagraphStartCount = 5;
struct dataCFG
{
public string serialNumDdevice;
public ArrayList numWhiteListAbonent;
}
public static int GetSize(object obj)
{
return System.Runtime.InteropServices.Marshal.SizeOf(obj);
}
public static int SizeOf<T>()
{
return System.Runtime.InteropServices.Marshal.SizeOf(typeof(T));
}
static dataCFG _dataCFG = new dataCFG();
static void Main(string[] args)
{
Console.WriteLine(SizeOf<dataCFG>()); //Размер типа
Console.WriteLine(GetSize(_dataCFG)); //Размер значения
Console.ReadKey();
}
}