2. Hodnotové typy

2.8. Rozdíl mezi strukturou a třídou

Následující tabulka ukazuje rozdíly mezi strukturou a třídou – viz Tabulka 1.

Otázka

Struktura

Třída

Jedná se o hodnotový typ, nebo referenční typ?

Hodnotový typ

Referenční typ

Sídlí instance na zásobníku, nebo na haldě?

Instancím struktur se říká hodnoty a sídlí na zásobníku

Instancím třídy se říká objekty a sídlí na haldě

Lze deklarovat implicitní konstruktor?

Ne

Ano

Pokud napíšete vlastní konstruktor, vygeneruje kompilátor také implicitní konstruktor?

Ano

Ne

Pokud neinicializujete datové složky ve vlastním konstruktoru, udělá to za Vás kompilátor?

Ne

Ano

Je povoleno inicializovat datové složky instance v místě jejich deklarace?

Ne

Ano

Tabulka 1: Hlavní rozdíly mezi strukturou a třídou [6]