В С# управление структурами осуществляется в терминах значений, а объекты в ссылке. По моему мнению, при создании экземпляра класса ключевое слово new
заставляет С# использовать информацию о классе для создания экземпляра, как показано ниже:
class MyClass
{
...
}
MyClass mc = new MyClass();
Для struct вы не создаете объект, а просто устанавливаете переменную в значение:
struct MyStruct
{
public string name;
}
MyStruct ms;
//MyStruct ms = new MyStruct();
ms.name = "donkey";
То, что я не понимаю, - это если объявить переменные MyStruct ms = new MyStruct()
, что такое ключевое слово new
здесь делает для утверждения?, Если struct не может быть объектом, то какой экземпляр new
здесь создается?