C++ jest językiem programowania ogólnego przeznaczenia wspierającym paradygmat imperatywny i obiektowy oraz programowanie generyczne.
Język C++ łączy w sobie niskopoziomowe programowanie dostosowane do konkretnych architektur komputerowych z programowaniem wysokopoziomowym, które może być zupełnie niezależne od specyfikacji urządzenia, na którym program jest uruchamiany.
C++ wywodzi się z imperatywnego języka C, a główną cechą odróżniającą go od swojego poprzednika jest wsparcie dla programowania obiektowego. Cecha ta sprawia, że C++ jest językiem wieloparadygmatowym. Istnieje wiele języków obiektowych, jednak C++ wyróżnia się na ich tle wydajnością - jest kompilowany do niskopoziomowego kodu, który możne być uruchamiany bezpośrednio przez procesor komputera.
#include <iostream>
using namespace std;
class Figura {
protected:
int dlugosc, wysokosc;
public:
Figura( int a=0, int b=0)
{
dlugosc = a;
wysokosc = b;
}
virtual int pole()
{
cout << "Pole z klasy Figura :" <<endl;
return 0;
}
};
class Prostokat: public Figura{
public:
Prostokat( int a=0, int b=0):Figura(a, b) { }
int pole ()
{
cout << "Pole z klasy Prostokąt :" <<endl;
return (wysokosc * dlugosc);
}
};
class Trojkat: public Figura{
public:
Trojkat( int a=0, int b=0):Figura(a, b) { }
int pole ()
{
cout << "Pole z klasy Trójkąt :" <<endl;
return (dlugosc * wysokosc / 2);
}
};
int main( )
{
Figura *figura;
Prostokat prostokat(20,15);
Trojkat trojkat(10,7);
figura = &prostokat;
cout << figura->pole() <<endl;
figura = &trojkat;
cout << figura->pole() <<endl;
return 0;
}