UnrealEngine5/공부

[UE5] !!반환을 하는 이유

왹져박사 2025. 4. 9. 19:17

 

Unreal source code 중, 다음 코드를 발견했다. 

왜 Object가 아닌 !!Object를 반환할까 궁금했다. 결국 같은 결과가 아닌가?싶었다. 

		bool Succeeded() const
		{
			return !!Object;
		}

 

결론적으로, !!를 사용하는 이유는 Object의 포인터가 아닌 안전하게 bool값을 명시적으로 반환하기 위해서라고 한다. 

그냥 Object를 반환하여도 같은 결과를 나타낼 수 있지만,

bool을 반환한다는 의도를 명확히 하고, 

타입 안정성을 보장하려는 목적이라고 한다.