Study/UnrealEngine

Unreal Engine C++ Tutorial Error Log

리쥬쥬 2017. 7. 10. 19:53

언리얼 엔진 공식 문서에서 C++ 튜토리얼을 진행하고 있다.

버전이 상위 버전으로 올라가면서 IWYU(Include-What-You-Use)에 의해 필요한 컴포넌트의 헤더를 따로 추가해줘야한다.


대부분의 컴포넌트는 Engine.h 로 해결할 수 있다. 하지만 왜 엔진이 커지면서 병목 현상이 발생해서 IWYU를 채택했다고 한다.


IWYU 코드 작성 규칙

  1. 모든 헤더 파일은 자신의 필수 종속성을 포함합니다.

  2. *.cpp 파일은 자신에 일치하는 *.h 파일을 먼저 포함합니다.

  3. PCH 파일은 더이상 명시적으로 포함되지 않습니다.

  4. 모놀리식 헤더 파일은 더이상 포함되지 않습니다.

https://docs.unrealengine.com/latest/INT/Programming/UnrealBuildSystem/IWYUReferenceGuide/#whatitmeanstoiwyu



* Tip : 


1. 각각의 컴포넌트 헤더를 추가해주고 불완전한 형식이 뜨는 경우가 있는데,

그때는 헤더 파일에서의 해당 컴포넌트의 선언 앞에 class 를 붙여주면 해결된다.


2. UEngine or GEngine 을 쓸 필요가 있는 경우, 

#include "Engine/Engine.h" 을 추가해준다.