[Basic C++] #27_상수 표현식, constexpr
C++ 개발에서 까다로운 문법 혹은 특별한 의미를 갖는 부분에 대해 알아보겠습니다.
"전문가를 위한 C"의 10 항목, "C++의 까다롭고 유별난 부분들"에 해당하는 내용입니다.
Overview
- 개념
#0. 개념
1. 상수 표현식, constexpr?
const int getArraySize1() { reutrn 32; }
constexpr int getArraySize2() { return 32; }
int main()
{
int myArray[getArraySize1()]; // 에러!!
int myArray2[getArraySize2()]; // Ok!! 정상적으로 작동 합니다.
return 0;
}
Details
- C++에서 "상수 표현식"이란, 상수가 아닌 구문을 사용하면 에러가 발생하는 특정 상황에 "상수"로 취급되게끔 해주는 장치입니다.
- 하지만, 함수를 constexpr을 사용해서 선언하기 위해 많은 제약 사항들을 고려해야 하기 때문에 주의해야 합니다.
'언어 > Basic C++' 카테고리의 다른 글
[Basic C++] #30_캐스팅, const_cast, static_cast, dynamic_cast (0) | 2022.05.28 |
---|---|
[Basic C++] #29_typedef (0) | 2022.05.22 |
[Basic C++] #26_const 포인터, const 참조 (0) | 2022.05.15 |
[Basic C++] #25_우측 값 참조, 이동 시맨틱 (0) | 2022.05.14 |
[Basic C++] #24_우측 값 참조, 대입 연산의 좌항과 우항 (0) | 2022.05.14 |