전방 선언
우리는 이제 BasePawn에 캡슐 컴포넌트, 스태틱 메시 컴포넌트 등이 필요한 것을 알고 있다.
이제 VScode에서 간단하게 캡슐 컴포넌트를 선언해보자.
현재 컴파일러가 UCapsuleComponent가 무엇인지 모르므로, 헤더파일을 선언해주어야 한다.
해당 내용은 "Components/CapsuleComponent.h"에 들어있다.
위 헤더파일을 선언해주면 간단하게 해결된다.
하지만 우리는 UCapsuleComponent 타입을 선언하는 것만 원하는 것이지,
해당 헤더파일에 있는 다른 기능들을 원하는 것이 아니다.
헤더를 선언하면 헤더에 속한 모든 내용을 가져오게 되므로, 파일의 용량이 커지게 된다.
이를 방지하기 위해 사용하는 것이 전방 선언이다.
전방 선언은 새 포인터를 선언할 때 사용할 수 있으며, 앞에 class를 붙이게 된다.
이는 cpp 파일에서 사용할 것만을 포함하고, h 파일에는 가능한 적은 내용을 포함하기 위하여 사용된다.
우리는 포인터로 단순히 UCapsuleComponent 타입 가리키기만 하기에, 전방선언을 통해 간단하게 처리할 수 있다.
당장 세부적인 내용을 필요로하는 것이 아니기 때문이다.
하지만 만약 UCapsuleComponent을 사용하는 코드가 cpp에 존재한다면 오류가 발생한다.
실제 사용을 위해서는 세부적인 내용을 알아야 하는데, 우리는 단순히 헤더에서 UCapsuleComponent 타입이 있다고 미리 알려주기만 했기 때문이다.
따라서 cpp 파일에서는 해당 헤더파일을 적어주어야 한다.
'Unreal > Udemy 강의' 카테고리의 다른 글
Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 5-5 (0) | 2024.03.31 |
---|---|
Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 5-4 (0) | 2024.03.31 |
Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 5-2 (0) | 2024.03.30 |
Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 5-1 (0) | 2024.03.30 |
Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 4-41 (0) | 2024.03.30 |