В C# две основные категории типов — это типы значений (такие как структуры) и ссылочные типы (такие как классы). Поскольку структура (или struct) является типом значения, она ориентирована на данные.

Структура может хранить атрибуты и связанные с ними методы, которые предпочтительно не фокусируются на поведении.

Как объявить структуру

Каждое объявление структуры должно иметь структура ключевое слово. Перед ключевым словом struct используйте модификатор доступа, а после него укажите имя и пару фигурных скобок. Вот как объявить структуру Game:

публичный структура игры {}

Как заполнить структуру

Структура хранит данные внутри своих фигурных скобок в виде атрибутов, конструкторов, методов, событий и т. д.

публичный структура игры
{
публичный имя строки;
публичный строковое описание;
публичныйинт уровни;

публичныйИгра(имя строки, описание строки, инт уровни){
это.имя = имя;
это.описание = описание;
это.levels = уровни;
}

общедоступная строка переопределения ToString() => $"Название: {name}, Описание: {description}, Уровни: {levels}";
}

instagram viewer

Структура Game теперь имеет три атрибута, конструктор и метод. Это три основных компонента структуры C#, которые также являются тремя основными компонентами структуры. С# класс.

Как создать структурную переменную

Каждый экземпляр структуры C# называется переменная. Есть два способа создать переменная из структуры. Вы можете использовать конструктор:

Игра game1 = новая игра("Покéпн ВПЕРЕД", "Lorem ipsum dolor sit amet.", 50);

Или вы можете присвоить значения отдельным атрибутам структуры с помощью оператора точки (.):

Игра игра1;
игра1.имя = "Покéпн ВПЕРЕД";
игра1.описание = "Lorem ipsum dolor sit amet.";
game1.levels = 50;

Оба подхода достигают одного и того же результата. Приведенный выше код использует C# для разработки игрового объекта Pokémon GO с кратким описанием и 50 уровнями. Итак, теперь вы можете использовать объект game1.

Приставка.WriteLine(игра1.Нанизывать());

Это выводит на консоль следующий вывод:

Имя: Покémon GO, Описание: Lorem ipsum dolor sit amet., Уровни: 50

Различия между структурой и классом

Структура и класс имеют схожий внешний вид, но имеют много заметных различий. Они используют разные ключевые слова для объявления. И структуры не поддерживают ни нулевые ссылки, ни наследование.