constexpr(const 차이, #if문)


constexpr(const 차이, #if문)

1. const 차이 const와 constexpr은 모두 상수를 정의하지만 차이가 있다. const : 런타임 시간에 값을 결정 constexpr : 컴파일 시간에 값을 결정 아래 예시를 보자. int a = 1; // 가능 const int b = 1; // 가능 constexpr int c = 1; // 가능 모두 가능하다. int a = 1; // 가능 const int b = a; // 가능 constexpr int c = a; // 불가능 const는 런타임 시간에 a라는 값이 1인 것을 인지한 후 상수로 정의되지만, constexpr 컴파일 시간에 a라는 값이 1인 것을 알 수 없어서 에러가 난다. 2. #if문 #if문은 조건부 컴파일을 하기 위한 전처리기인데 사실 불편한 적이 많다. 들여쓰기 문제랑 코드 자체가 블러처리되듯이 되어 코드 보기가 힘들다. #ifdef _WIN64 std::cout << "This is 64 bit system" << std::endl; ...


#32 #if #endif #elif #constexpr #const #64비트 #64 #32비트 #전처리기

원문링크 : constexpr(const 차이, #if문)