Wstęp do programowania obiektowego w C++
W poprzednich artykułach z kategorii „C++” omawiałem programy, które składały się z funkcji main, a w niektórych przypadkach również z innych funkcji zdefiniowanych przez programistę (np. do obliczania sumy). Takie rozwiązanie miało swoje wady i zalety, ale jak pewnie ambitne osoby zdążyły się zorientować, tego typu schemat pracy nie nadaje się do tworzenia dużych systemów informatycznych składających się z tysięcy linii kodu.
Pisząc programy komputerowe bez używania klas w końcu dochodzimy „do sufitu” orientując się, że dopisywanie kolejnych linijek w mainie, który zaczął rozrastać się do niebotycznych rozmiarów po prostu mija się z celem. Aby tworzenie aplikacji było łatwiejsze i bardziej intuicyjne wprowadzono coś takiego jak programowanie zorientowane obiektowo.
Pierwsza klasa
Siedząc przy biurku otacza nas bardzo wiele różnych przedmiotów takich jak, klawiatura, myszka, komputer, monitor czy po prostu długopis. W programowaniu każda taka, rzecz to obiekt czyli klasa. Pisząc zwykłe programy w C++, też używamy obiektów na przykład klasy int, każda zmienna typu całkowitego to przecież taki obiekt:
int obiektKlasyInt; //tworzymy obiekt klasy int obiektKlasyInt = 10;
Czym więc są klasy? To nic innego jak obiekty, jakiś rzeczywisty bądź abstrakcyjny byt (długopis, krzesło, stół, książka itd.).
To na razie tyle z teorii, teraz przejdźmy do praktyki. Składnia klasy w C++ prezentuje się tak:
class NazwaKlasy {
};Gdzie NazwaKlasy to po prostu nazwa naszego obiektu jak okno, biurko itd. Bardziej ogólny kod z funkcją main:
#include <iostream>
using namespace std;
class NaszaPierwszaKlasa {
};
int main() {
return 0;
}Długopis jest pewnym obiektem, który służy do pisania na kartce papieru bądź w zeszycie dla naszych potrzeb kartką będzie ekran komputera. Skoro więc jest to obiekt i to jeszcze taki, który występuje w fizycznej formie to możemy stworzyć sobie klasę długopis:
#include <iostream>
using namespace std;
class Dlugopis {
};
int main() {
return 0;
}Mając klasę Dlugopis (na razie jeszcze nic ona nie robi) stwórzmy w funkcji main obiekt tej klasy:
Dlugopis dlugopis1; //tworzenie obiektu klasy Dlugopis
Cały kod:
#include <iostream>
using namespace std;
class Dlugopis {
};
int main() {
Dlugopis dlugopis1;
return 0;
}A propo nazw klas to w programowaniu przyjęło się, że pisze się je z dużej litery.