inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문

TextRPG (OOP) #3

virtual 질문

330

ms

작성한 질문수 21

0

부모 클래스에서 virtual 선언된 함수가 자식 클래스에서 오버라이딩될 때 자식클래스에서도 꼭 virtual을 써줘야 하나요?

아니면 쓰나 안쓰나 똑같이 virtual로 처리돼서 별 상관 없나요?

C++

답변 3

1

Rookiss

소멸자를 따로 정의하지 않으면,
기본적으로 ~Classname() { }이 만들어진다고 보시면 됩니다.
(virtual이라면 virtual ~Classname() {} 이겠죠)

1

Rookiss

안 써도 똑같이 virtual 처리가 되긴 하지만,
매 번 부모 클래스를 일일히 확인할 순 없으니
가독성 차원에서라도 virtual을 붙이는 것을 권장드립니다.

0

ms

추가로 헷갈리는거 질문할 게 있습니다.

creature랑 player클래스 소멸자에 virtual을 붙이고 { }안에는 아무것도 선언 안한 채로 두고,  Knight같은 직업 클래스는 소멸자를 정의 안하고 있는데, 

어차피 _player가 자식클래스 객체의 포인터라서 delete할 시 완전하게 할당 해제가 될 텐데 부모 클래스에 소멸자를 정의할 필요가 있나요?

질문이 좀 난잡한데 요지는 Knight등의 직업 클래스는 왜 소멸자를 정의 안했는지 이유가 궁금합니다.

visualstudio에서 파일분할관리실습시 설정 문의를 드립니다.

0

541

1

정렬함수 좀 더 확실하게 이해 할 방법이 있을까요?

0

442

1

strcpy() 구현 관련 질문

0

513

1

빌드(망치)를 누르니 이런 오류가 떴습니다. 어떻게 해야 하나요?

0

452

1

클래스 타입의 포인터 질문합니다

0

546

1

입력값을 enum 값에 넣어주는거 이제 막혔나요?

0

497

1

템플릿 특수화 관련 질문

0

384

1

포인터 관련 질문합니다!

0

263

1

Unable to start assembler. Check your settings.

0

830

2

cpu선택

0

539

1

포인터 질문이 있습니다

0

323

1

20:35 에서 구조체 크기에 대한 질문입니다!

0

584

1

iterator 삭제관련

0

406

1

함수 호출을 디스어셈블러로 분석하다가 궁금점이 생겼습니다!

0

310

1

15 분 45초 대 질문

0

308

0

스택 프레임 질문합니다!

2

306

1

오른값 참조 in 게임

0

384

0

동적할당 질문이 있습니다

0

449

1

안녕하세요 메모리에 대해 질문드립니다.

0

304

1

함수객체 의 매개변수

0

358

1

복사생성자

0

434

1

main이나 endl 부분이 주황색으로 표시된건 어떻게 하나요

0

420

1

포인터 실습 강의를 보고 궁금한게 있습니다.

0

354

1

스택 오버플로우

2

790

1