Struktury

Struktura (ang. struct) jest bardzo podobna do klasy; różni się od niej w następujących aspektach:

  • struktura to typ wartościowy, a klasa to typ referencyjny,
  • struktura nie realizuje dziedziczenia (poza niejawnym dziedziczeniem po object, a dokładniej po System.ValueType).

Struktura może mieć wszystkie składowe właściwe dla klasy, z wyjątkiem finalizatora i składowych wirtualnych albo składowych o dostępie zabezpieczonym (protected).

Do wersji C# 10 struktury nie mogły też definiować inicjalizatorów pól oraz konstruktorów bezparametrowych. W najnowszej wersji języka C# to ograniczenie zostało rozluźnione (przede wszystkim dla potrzeb rekordów opartych na strukturach), ale wciąż przed użyciem tych mechanizmów warto dobrze się zastanowić, ...

Get C# 10 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.