인프런 커뮤니티 질문&답변
객체를 다른 객체로 매개변수로 넘길 때
해결된 질문
작성
·
218
0
강사님 안녕하세요. 클래스 설계에 관해서 궁금한게 있어서 문의드립니다.
bfs나 에이스타 프로젝트에서 board의 객체를 Maze의 init 함수에서 Player에게 call by Address 타입으로
넘기고 있는데요.
레퍼런스로 넘길수도 있지 않나요?
제 생각에는 Player클래스헤더에 레퍼런스 타입으로 멤버변수로 만들고, 생성자에서 이니셜라이저로 받을수 있다면 레퍼런스 타입도 가능하지 않을까란? 생각을 하고 있는데, 왜 Call by address로 넘겼는지 알고 싶습니다.
생성자에서 받기에는 서로 참조하기에 복잡해서 그런건가요?
답변 1
1
Rookiss
지식공유자
참조나 포인터나 어차피 내부적으로는 종이 한 장 차이입니다.
참조로 받을거면 생성자에서 받아야 한다는 제약 사항이 있는데,
그것을 지킬꺼라면 참조로 해도 무방하고
그렇지 않다면 포인터로 관리하면 되는 것인데
사실 이 부분은 전혀 중요하지 않고 실제 현업에서도 작업자마다 혼용합니다.






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