constexpr C++11에 constexpr 이라는 키워드가 추가되었다. constexpr은 변수 또는 함수의 값을 컴파일 시점에 도출하여 상수화 시켜주는 아주 강력한 기능이다. 컴파일 시점에 상수로 처리되기 때문에 switch case 문에서도 상수로 취급된다. constexpr을 함수에 사용할 때 제약사항 constexpr을 사용하는 데 있어서 몇 가지 제약사항이 있다. 반환값이 무조건 Literal Type이어야 한다. virtual로 재정의된 함수가 아니어야 한다. 재귀 함수로 사용될 수 있다. 함수에 constexpr을 붙일 경우 inline을 암시한다. C++11 에서는 함수 본문에 지역변수를 둘 수 없고, 하나의 return 구문만 있어야 했다. 위 제약은 C++14에서 사라졌다. 구현 ..