Для объявления виртуальной функции используется ключевое слово …
Другие предметы Колледж Виртуальные функции и полиморфизм виртуальная функция ключевое слово C++ основы программирования колледж
В языке программирования C++ для объявления виртуальной функции используется ключевое слово virtual.
Давайте разберемся, что такое виртуальная функция и почему она используется:
Рассмотрим простой пример:
class Animal {
public:
virtual void makeSound() {
cout << "Animal sound" << endl;
}
};
class Dog : public Animal {
public:
void makeSound() override {
cout << "Woof" << endl;
}
};
class Cat : public Animal {
public:
void makeSound() override {
cout << "Meow" << endl;
}
};
В этом примере функция makeSound() объявлена как виртуальная в базовом классе Animal. Это позволяет производным классам Dog и Cat переопределять ее, предоставляя свою реализацию.
Таким образом, при использовании указателя на базовый класс, который указывает на объект производного класса, будет вызвана правильная версия функции:
Animal* animal = new Dog(); animal->makeSound(); // Выведет: Woof animal = new Cat(); animal->makeSound(); // Выведет: Meow
Итак, ключевое слово virtual позволяет создавать гибкие и расширяемые программные конструкции, используя полиморфизм в C++.