Довідники C++ Інтерфейси

Що таке Інтерфейси в C++?

Інтерфейси реалізуються через абстрактні класи, що містять суто віртуальні функції. Інтерфейси надають абстрактний набір методів, які класи мають реалізувати. Це забезпечує структурну однорідність у додатку, дозволяючи різним класам надавати спільний інтерфейс.


Оголошення інтерфейсу:

// Інтерфейс
class Drawable {
public:
     // Чисто віртуальна функція (метод інтерфейсу)
     virtual void draw() const = 0;

     // Віртуальний деструктор
     virtual ~Drawable() = default;
};

У цьому прикладі draw() є суто віртуальною функцією, що робить клас Drawable інтерфейсом. Інтерфейси не можуть створювати екземпляри.


Реалізація інтерфейсу в класі:

// Клас, що реалізує інтерфейс
class Circle : public Drawable {
public:
     // Реалізація методу інтерфейсу
     void draw() const override {
         std::cout << "Drawing a circle." << std::endl;
     }
};

Клас Circle успадковує від інтерфейсу Drawable і надає реалізацію методу draw().


Додаткові можливості:

  • Множинне успадкування інтерфейсів:Класи можуть успадковувати від кількох інтерфейсів, надаючи реалізації для всіх відповідних методів.
  • Інтерфейси як контракти:Використання інтерфейсів забезпечує ясні контракти між різними частинами програми, покращує читаність та забезпечує однорідність у структурі програми.
Коментарі
Додати коментар

Поки що коментарів немає