컴파일 시간에 평가되는 상수 표현식을 지정하는데 사용한다.
즉, 컴파일 과정에서 구문의 오류를 확인할 수 있다.
constexpr int size = 10; // 변수 size는 컴파일 시간에 상수로 평가될 수 있음
int array[size]; // 배열의 크기로 constexpr 변수를 사용할 수 있음
함수에 사용하면, 역시 컴파일 과정에서 오류를 확인할 수 있다.
#include <iostream>
constexpr int square(int x) {
return x * x;
}
int main() {
constexpr int result = square(5); // 함수 호출을 포함한 constexpr 변수 초기화
std::cout << "Square of 5 is: " << result << std::endl;
return 0;
}
장점
1. 성능 향상
2. 에러 예방
'C&C++' 카테고리의 다른 글
[C++11] thread (0) | 2024.06.29 |
---|---|
[C++17] filesystem (0) | 2024.06.29 |
[C++11] nullptr (0) | 2024.06.23 |
[C++11] std::array (0) | 2024.06.23 |
[C++11] 범위 기반 for (range-based for loop) (0) | 2024.06.23 |