Sobes.tech
Back to questions
Junior — Middle
81

Можешь привести пример использования ключевого слова virtual в программировании?

Companies where asked
101ХР101ХР

Answer from AI

sobes.tech AI

Ключевое слово virtual в C++ используется для объявления виртуальных функций, что позволяет реализовать полиморфизм — вызов метода зависит от типа объекта во время выполнения, а не от типа указателя или ссылки.

Пример:

#include <iostream>

class Base {
public:
    virtual void show() { // виртуальная функция
        std::cout << "Base show" << std::endl;
    }
};

class Derived : public Base {
public:
    void show() override { // переопределение виртуальной функции
        std::cout << "Derived show" << std::endl;
    }
};

int main() {
    Base* ptr = new Derived();
    ptr->show(); // вызовется Derived::show благодаря virtual
    delete ptr;
    return 0;
}

В этом примере, несмотря на то, что указатель ptr имеет тип Base*, вызывается метод Derived::show, так как функция объявлена виртуальной.