posted by REDFORCE 2017. 3. 23. 07:39

목차


1. Auto

2. range based for

3. enum class

4. non-static data member initializers

5. initializer lists

6. default / delete definition

7. override / final

8. emplacement

9. constexpr

10. lambda

11. random

12. thread



2. constexpr


이번 글은 constexpr에 대해서 정리해보도록 하겠습니다.



constexpr은 변수, 함수, 클래스를 컴파일 타임에 정수로 사용할 수 있다.

[이 말은 상수로 취급할 수 있는 작업은 컴파일 타임에 처리하도록 한다는 말!]


#define 이나 템플릿을 대체하여 사용 할 수 있다.




음...?그래서 어떤식으로 쓴다는 거지? 하고 느끼실 텐데요.


아래와 같이 #define을 이용한 매크로에도 써먹어서 컴파일타임에 상수로 사용이 가능합니다.




#define으로 처리하면 빌드를 해봐야지 알 수 있었던 에러를


미리 컴파일타임에 컴파일러가 띄워줄 수 있는 방식이니 


우리는 프로젝트를 빌드하지 않고도 바로바로 에러가 날 수 있는 녀석들을 확인 할 수 있습니다.