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

장재범님의 프로필 이미지

작성한 질문수

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

은닉성

class 내부 함수 선언에 대해서 궁금합니다

22.01.01 18:24 작성

·

461

1

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
 
 
 
class Car
{
public:
 
void TurnKey()
{
RunEngine()
}
 
void RunEngine();
}
 
이렇게 RunEngine이 선언되기 전에 TunrKey에서 먼저 사용되는것이 어떻게 가능한지 알고싶습니다!
 
일반 함수들을 사용할 때는 허용되지 않았던것으로 알고있어서 혼란이 옵니다
 
항상 강의 잘 듣고 있습니다 감사합니다

답변 1

0

가또님의 프로필 이미지

2022. 01. 01. 19:04

일반적으로 밖에서 선언되는 함수의 경우에 위에서부터 분석? 되기 떄문에 자신보다 아래에 선언되어있는 함수에 접근하려고 하면 아시는것처럼 그 함수가 어디에 있는지 알지 못해 오류가 발생합니다.

 

다만 클래스 내부에 있는 멤버 함수의 경우 클래스 자체가 먼저 분석되게 되고 이대 클래스 내부에 뭐가 있는지 리스트가 만들어지기 때문에 이 리스트에서 자신보다 아래에 함수가 있더라도 알게됩니다!

 

혹시.. 제가 잘못알고있는거라면 루키스님이 자세히 알려주실것같네요!

가또님의 프로필 이미지

2022. 01. 01. 19:06

아 참고로 클래스 자체가 먼저 분석? 해석? 되기 때문에 멤버함수 아래에 멤버변수를 두더라도 아무 문제없이 컴파일 됩니다!

장재범님의 프로필 이미지
장재범
질문자

2022. 01. 02. 15:53

지식 공유해주셔서 감사합니다!