Структуры C#

Структуры в C# относятся к типам значений. Это значит что структуры, как и другие значимые типы, размещаются в стеке, и, следовательно, время жизни структур предсказуемо. Они уничтожаются сразу же как только выходят за пределы видимости.

Структуры в C# определяются при помощи ключевого слова struct:

struct Struct1
{
    // члены структуры ( поля, методы, свойства, события )
}

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

Пример структуры C# со статическим конструктором без аргументов:

using System;

struct Program
{
    private static int staticInt;

    // Статический конструктор структуры Program
    static Program()
    {
        // Инициализация статического поля staticInt
        staticInt = 1;
    }

    static void Main()
    {
        Console.WriteLine(staticInt);
        Console.ReadKey();        
    }
}

Структуры, также как и классы, могут реализовывать произвольное количество интерфейсов.

avatar
5000
  Подписаться  
Уведомление о