인프런 커뮤니티 질문&답변
virtual과 override 차이
해결된 질문
작성
·
225
0
재정의를 하실 떄 virtual void VMove 이런식으로 재정의를 하셨는데, 일반적으로는 void VMove override를 쓰지 않나요 ??
virtual void VMove override 이런 형태로 재정의하는건 봤는데 virtual void VMove 이런 형태로 재정의하는건 처음봐서 질문 드립니다.
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다. 성민님.
재정의를 할 때 virtual과 override의 사용에 대해 질문 주셨네요. 이 주제에 관련하여 이미 유사한 질문과 답변이 여러 개 제공된 적이 있습니다. 이에 대한 내용을 요약하고, 관련된 답변 링크를 제공해 드리겠습니다.
핵심 요약:
virtual키워드: 부모 클래스에서 해당 메서드를 가상 함수로 선언할 때 사용합니다.
override키워드: 자식 클래스에서 부모 클래스의 가상 함수를 재정의할 때 사용합니다. 이는 오타나 오버로드와 헷갈리는 것을 방지할 수 있습니다.
- 부모 클래스의 메서드가 이미
virtual로 선언되어 있다면, 자식 클래스에서는override만 써도 무방합니다.
유사한 질문과 답변:
-
- 이 답변에서는 부모 클래스의
virtual과 자식 클래스의override사용 여부에 따라 실행 결과가 어떻게 달라질 수 있는지를 설명하고 있습니다.
- 이 답변에서는 부모 클래스의
-
- “부모 클래스에서 virtual 선언된 함수가 자식 클래스에서 오버라이딩될 때 자식클래스에서도 꼭 virtual을 써줘야 하나요?“라는 질문에 대해, 자식 클래스에서는
override를 사용하는 것이 좋다는 설명이 포함되어 있습니다.
- “부모 클래스에서 virtual 선언된 함수가 자식 클래스에서 오버라이딩될 때 자식클래스에서도 꼭 virtual을 써줘야 하나요?“라는 질문에 대해, 자식 클래스에서는
위의 두 링크를 참고하시면 virtual과 override의 차이와 사용법에 대해 더 자세히 이해하실 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.




