Moștenire

Moștenirea permite unei clase să preia atributele și metodele altei clase. Clasa care moștenește se numește derivată (sau subclasă).

inheritance.cpp
class Animal {
public:
  string nume;
  void mananca() { cout << nume << " mananca." << endl; }
};

class Caine : public Animal {  // Caine moștenește Animal
public:
  string rasa;
  void latra() { cout << "Ham ham!" << endl; }
};

int main() {
  Caine c;
  c.nume = "Rex";    // moștenit din Animal
  c.rasa = "Labrador";
  c.mananca();       // metodă moștenită
  c.latra();         // metodă proprie
}

Constructorul clasei de bază

class Vehicle {
public:
  int viteza;
  Vehicle(int v) : viteza(v) {}
};

class Masina : public Vehicle {
public:
  string marca;
  Masina(string m, int v) : Vehicle(v), marca(m) {}  // apel constructor baza
};