강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

포도님의 프로필 이미지
포도

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

클래스 형식 변환

5:08 static void EnterGmae(Player player) 오류가 안나는 이유

작성

·

366

0

Player player = new Player(); 가 없는데

Line24 static void EnterGmae(Player player){} 에 빨간 밑줄이 왜 안생길까요..

Main함수에서 Player의 자식클래스인 Knight클래스를 불러오면서 상속으로 이어진 부모는 자동으로 불러와지는건가요??

자식클래스를 부르면 부모클래스는 따로 소환안해도 되나요?

하나 더 질문이 있는데요.

자식클래스 끼리는 형변환이 안되는건가요? mage <-> knight 서로 형변환은 불가능인가요?

답변 1

2

Rookiss님의 프로필 이미지
Rookiss
지식공유자

Knight는 Player이기도 하기 때문에,
알아서 변환되어 들어가기 때문입니다.
mage <-> knight는 서로 연관성이 없기 때문에 형변환을 하면 안됩니다.
C++에서는 그렇게 잘못된 타입끼리 변환을 하다가,
메모리 오염이 일어나고 메모리가 터지고 난리가 납니다.

포도님의 프로필 이미지
포도

작성한 질문수

질문하기