Final answer:
When a derived class has the same name and signature as a base class virtual function, it is called overriding. It allows the derived class to provide its own implementation of the virtual function while maintaining the same interface as the base class.
Step-by-step explanation:
When a derived class has the same name and signature as a base class virtual function, it is called overriding. Overriding allows the derived class to provide its own implementation of the virtual function and replace the base class implementation.
By overriding a virtual function, the derived class can define its own behavior for that function while still maintaining the same interface as the base class.