Встречается на 12% собеседований по C#

Что такое структура

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

Ключевые особенности:

  • Наследуют от System.ValueType.
  • Не поддерживают наследование (кроме интерфейсов).
  • Не могут быть null (кроме Nullable<T>).
  • Рекомендуются для небольших, неизменяемых данных (например, Point, DateTime).

Пример:

csharp
public struct Point  
{  
    public int X;  
    public int Y;  

    public Point(int x, int y)  
    {  
        X = x;  
        Y = y;  
    }  
}  

// Использование  
Point p1 = new Point(10, 20);  
Point p2 = p1; // Копирование значения  

Когда использовать:

  • Размер < 16 байт.
  • Не требуется полиморфизм.
  • Частые создания/удаления (меньше нагрузки на GC).

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы