Что хранит в себе объект?
Вывод на консоль - 41, это размер объекта o в байтах. Откуда 40 байт и на что они потратились?
object o = new object();
using (Stream s = new MemoryStream())
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(s, o);
Console.WriteLine(s.Length);
}
Ответы (1 шт):
Автор решения: Alexander Petrov
→ Ссылка
using System.Runtime.Serialization.Formatters.Binary;
object o = new object();
using (var s = new MemoryStream())
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(s, o);
Console.WriteLine(s.Length);
Console.WriteLine(string.Concat(s.ToArray().Select(x => (char)x)));
}
Вывод:
System.Object♂
То есть там записан сперва тип данных, а потом значение этого типа.