Klassen in C++

Programmeren met klasses in C++

C++ dankt zijn ++ aan het object georienteerde vermogen van deze taal. Er zijn hierdoor een aantal eigenschappen bijgekomen:

  • Encapsulatie
  • Abstractie
  • Overdracht van eigenschappen tussen objecten (Inheritance)
  • Polymorfisme
  • Herbruikbaarheid

Bovenstaande eigenschappen zijn verenigd in C++ door het mogelijk te maken te programmeren in klasses.

Hoe ziet een C++ klasse eruit

Het volgende stuk code bevat een werkende klasse in C++ die betreft een auto.

De auto bevat: een id nummer, een aantal wielen en een maximum snelheid.
De auto kan: zijn gegevens printen.

#include < iostream >

using namespace std;

// De klasse auto.
class Auto
{
private:
int id; //het ID - nummer van de auto.
int aantalWielen; // het aantal wielen van de auto.
int maxSnelheid; // de maximum snelheid van de auto.
public:
Auto (int _id, int _aantalWielen, int _maxSnelheid);
int getID();
int getWielen();
int getSnelheid();
void printGegevens();
};

// Stelt de gegevens voor de auto in.
Auto :: Auto (int _id, int _aantalWielen, int _maxSnelheid)
{
id = _id;
aantalWielen = _aantalWielen;
maxSnelheid = _maxSnelheid;
}

// Vraagt de naam van het object auto.
int Auto :: getID()
{
return id;
}

// Vraagt de snelheid van het object auto.
int Auto :: getSnelheid()
{
return maxSnelheid;
}

// Vraagt het aantal wielen van het object auto.
int Auto :: getWielen()
{
return aantalWielen;
}

//print de auto gegevens.
void Auto :: printGegevens()
{
cout << "ID: " << getID() << " Aantal wielen: " << getWielen() << " Maximum snelheid: " << getSnelheid() << endl;
}

// De main functie, een verplichting in C++.
int main()
{
Auto auto1 (0, 4, 120);
Auto auto2 (1, 6, 100);

auto1.printGegevens();
auto2.printGegevens();

return 1;
}