Back to questions
101ХР
Junior — Middle
81
Можешь привести пример использования ключевого слова virtual в программировании?
Companies where asked
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, так как функция объявлена виртуальной.