C++ FAQ를 읽습니다.C++에서 변수를 선언 할 수있는 곳은 어디입니까?
"는 const를 정적 데이터 멤버는 클래스에 선언 일반적 입니다 같은 .cpp 파일로, 소스 파일에 정의 (초기화) 그러나 된다. 제 16 장에서, 정적을 사용하여 그것을 말한다 어떤 경우에는 클래스 본체에서 초기화 될 수 있습니다. "
그런 다음 계속해서 정수 및 비 정수 유형을 선언 할 수 있습니다 (이 내용은 C++ 11에서 정수로 변경된 것으로 생각되지만).
내 질문에 위의 내용은 const 정적 데이터 멤버에만 적용되며 non-const 정적 데이터 멤버에는 적용되지 않습니까?
나는 정말로 혼란스러워지기 시작하고 왜 이러한 제한이 있는지 보지 못하고 있습니까? 휘발성, 변경 가능 및 기타 키워드 변수에 대한 규칙이 있습니까? 누군가 이것을 어떻게 쉽게 배울 수 있습니까 (24 시간 프로그래밍하는 것 외에)?
C++ 03에서는 static, const, integral 형식 인 경우에만 클래스에 있습니다. – chris
자세히 알아 보려면 설명서를주의 깊게 읽어야합니다 *. 사물이 정의되는 방법에는 종종 많은 미묘한 차이가 있지만 주어진 예제를 따르면 그것이 어떻게 작동하는지 일반적으로 이해해야합니다. C++에 대한 모든 것을 효과적으로 알 필요는 없습니다. – tadman