Вам потребуется использовать new для выделения любого ссылочного типа (класса).
Любой тип значения (например, int или struct) может быть объявлен без нового.Тем не менее, вы все еще можете использовать новый.Допустимо следующее:
int i = new int();
Обратите внимание, что вы не можете напрямую получить доступ к типу значения, пока он не будет инициализирован.При использовании структуры использование new TheStructType()
часто ценно, поскольку позволяет полностью использовать члены структуры без предварительной явной инициализации каждого члена.Это потому, что конструктор выполняет инициализацию.С типом значения конструктор по умолчанию всегда инициализирует все значения эквивалентными 0.
Кроме того, со структурой вы можете использовать new
с конструктором не по умолчанию, таким как:
MyStruct val = new MyStruct(32, 42);
Это обеспечивает способ инициализации значений внутри структуры.Это, как говорится, здесь не требуется, только опция.