Junior — Middle
What is the main purpose of the override keyword in object-oriented programming?
sobes.tech AI
Answer from AI
The main purpose of the method with the keyword override in object-oriented programming is to provide a new implementation of a method that is already defined in the base (parent) class. This allows a subclass to modify or extend the behavior of the inherited method.
In C++, the keyword override is not mandatory, but starting from C++11, you can use the override specifier to explicitly indicate that a method overrides a virtual method of the base class. This helps the compiler verify the correctness of the override and avoid errors.
Example:
class Base {
public:
virtual void show() {
std::cout << "Base show" << std::endl;
}
};
class Derived : public Base {
public:
void show() override { // overriding the method
std::cout << "Derived show" << std::endl;
}
};
Here, override guarantees that the show method indeed overrides the virtual method of the base class, and if the signature does not match, the compiler will generate an error.