인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

김원태님의 프로필 이미지
김원태

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part3: 자료구조와 알고리즘

객체를 다른 객체로 매개변수로 넘길 때

해결된 질문

작성

·

211

0

강사님 안녕하세요. 클래스 설계에 관해서 궁금한게 있어서 문의드립니다.
bfs나 에이스타 프로젝트에서 board의 객체를 Maze의 init 함수에서 Player에게 call by Address 타입으로
넘기고 있는데요.
레퍼런스로 넘길수도 있지 않나요?
제 생각에는 Player클래스헤더에 레퍼런스 타입으로 멤버변수로 만들고, 생성자에서 이니셜라이저로 받을수 있다면 레퍼런스 타입도 가능하지 않을까란? 생각을 하고 있는데, 왜 Call by address로 넘겼는지 알고 싶습니다.
생성자에서 받기에는 서로 참조하기에 복잡해서 그런건가요?

답변 1

1

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

참조나 포인터나 어차피 내부적으로는 종이 한 장 차이입니다.
참조로 받을거면 생성자에서 받아야 한다는 제약 사항이 있는데,
그것을 지킬꺼라면 참조로 해도 무방하고
그렇지 않다면 포인터로 관리하면 되는 것인데
사실 이 부분은 전혀 중요하지 않고 실제 현업에서도 작업자마다 혼용합니다.

김원태님의 프로필 이미지
김원태
질문자

답변해주셔서 감사합니다!

김원태님의 프로필 이미지
김원태

작성한 질문수

질문하기