[c++] 가상 함수의 재정의(override)

가상 함수를 재정의하기 위해서는 다음과 같은 규칙을 준수해야 합니다:

class Base {
public:
    virtual void sayHello() {
        std::cout << "Hello from Base" << std::endl;
    }
};

class Derived : public Base {
public:
    void sayHello() override {
        std::cout << "Hello from Derived" << std::endl;
    }
};

위의 코드에서 Base 클래스의 sayHello 함수를 Derived 클래스에서 재정의하였습니다. 이렇게 함으로써 파생 클래스의 객체가 해당 함수를 호출할 때 새로운 동작을 실행할 수 있습니다.

가상 함수의 재정의는 다형성(polymorphism)을 구현하는 데 중요한 역할을 합니다. 이는 객체 지향 프로그래밍에서 매우 유용하며, 코드의 유연성과 유지보수성을 높일 수 있습니다.

참고문헌: