#include <iostream>
using namespace std;
//정적맴버변수
//객체 생성과 무관하다.
//전역정적공간에 저장되고
//모든 객체가 그 공간을 공유해서 사용하게 된다.
class Account
{
string name;
int id;
int balance;
static int g_count; //정적맴버변수
public:
Account(string _name, int _id, int _balance)
: name(_name), id(_id), balance(_balance)
{
g_count++;
Info();
}
~Account()
{
}
public:
void Info()
{
cout << g_count << "번째 객체 생성" << endl;
cout << "현재 생성되어 있는 객체 수" << endl;
}
};
//===========================================
//스태틱 변수는 반드시 클래스 외부에서 초기화해야 한다.
//이 시점에서 메모리에 생성된다.
//즉, main 함수 호출 전 전역정적공간에 생성된다.
int Account::g_count = 0;
//=============================================
int main()
{
Account ac("홍길동", 1, 1000);
Account ac1("홍길동", 1, 1000);
Account ac2("홍길동", 1, 1000);
Account ac3("홍길동", 1, 1000);
Account ac4("홍길동", 1, 1000);
Account ac5("홍길동", 1, 1000);
Account ac6("홍길동", 1, 1000);
return 0;
}
'01.Bit 단기 > C++' 카테고리의 다른 글
23_상수멤버변수 (0) | 2018.05.03 |
---|---|
22_static 멤버함수 (0) | 2018.05.03 |
20_개체 생성과 소멸시점 (0) | 2018.04.30 |
19_heap객체생성 (0) | 2018.04.30 |
18_heap메모리 사용(C/C++ 비교) (0) | 2018.04.30 |
댓글