Klasa w C++ to szablon opisujący obiekty: ich dane oraz operacje, które można na nich wykonywać. Do zdefiniowania klasy najczęściej używa się słowa kluczowego class.
Podstawowa składnia
class NazwaKlasy {
private:
int pole;
public:
void metoda();
};
Ważne elementy składni:
- class - słowo kluczowe rozpoczynające definicję klasy,
- NazwaKlasy - identyfikator klasy,
- { ... } - ciało klasy,
- średnik ; po zamknięciu definicji.
Co może zawierać klasa?
Klasa może zawierać:
- atrybuty, czyli pola przechowujące dane obiektu,
- metody, czyli funkcje członkowskie klasy,
- konstruktory, uruchamiane przy tworzeniu obiektu,
- destruktor, uruchamiany przy niszczeniu obiektu,
- specyfikatory dostępu: private, public, protected.
Czy destruktor jest konieczny?
Nie. Definicja destruktora nie jest konieczna do stworzenia klasy w C++. Jeśli programista go nie napisze, kompilator może wygenerować domyślny destruktor automatycznie.
Przykład klasy bez destruktora:
class Uczen {
public:
int wiek;
void pokazWiek() {
cout << wiek;
}
};
Taka klasa jest poprawna, mimo że nie zawiera jawnie zdefiniowanego destruktora.
Uwaga egzaminacyjna
W pytaniach egzaminacyjnych często przyjmuje się, że typowa klasa składa się z atrybutów i metod, ale destruktor jest elementem opcjonalnym. Dlatego w pytaniu o składnik niekonieczny poprawną odpowiedzią jest: definicja destruktora.