정적 C++ 클래스 멤버는 static 키워드를 사용하여 정의할 수 있습니다. 클래스의 정적 멤버는 클래스의 개체 수에 관계없이 메모리에 정적 클래스 멤버의 복사본이 하나만 있기 때문에 모든 클래스 개체에서 공유됩니다.
정적 클래스 멤버는 다른 방법으로 초기화되지 않은 경우 클래스의 첫 번째 개체가 생성될 때 0으로 초기화됩니다.
C++에서 정적 클래스 멤버를 보여주는 프로그램은 다음과 같습니다.
예시
#include <iostream> using namespace std; class Example { public : static int a; int func() { cout << "The value of static member a: " << a; } }; int Example::a = 20; int main() { Example obj; obj.func(); return 0; }
출력
위 프로그램의 출력은 다음과 같습니다.
The value of static member a: 20
이제 위의 프로그램을 이해합시다.
클래스 예제에서 정적 클래스 멤버는 입니다. func() 함수는 값을 표시합니다. 이를 보여주는 코드 스니펫은 다음과 같습니다.
class Example { public : static int a; int func() { cout << "The value of static member a: " << a; } }; int Example::a = 20;
main() 함수에서 Example 클래스의 obj 객체가 생성됩니다. 그런 다음 값을 표시하는 함수 func()가 호출됩니다. 이를 보여주는 코드 스니펫은 다음과 같습니다.
int main() { Example obj; obj.func(); return 0; }