티스토리 뷰

C++

[C++] const static double 멤버 변수

developer0hye 2021. 3. 30. 10:41

const static double 멤버 변수

클래스에 const static 키워드와 함께 double type으로 변수를 선언하고 초기화해보면 아래와 같은 에러가 뜬다.

class sample{
    const static double pi=3.141592;
};

 


a member of type "const double" cannot have an in-class initializer


 

찾아보니 const static 키워드는 integral type에만 붙일 수 있다고 한다.

 

integral type이란 말이 잘 이해안됐는데 찾아보니 integral type은 fixed point type(ex: int)인 것으로 보인다.

 

C++11 이상을 지원하는 컴파일러를 사용중이라면, const 대신 constexpr 이라는 키워드를 붙이면 에러가 사라진다.

class sample{
    constexpr static double pi=3.141592;
};
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함