[문제]
아래의 코드에서 전역변수로 선언된 변수를 static변수로 변경하여라.
#include<iostream>
using namespace std;
int simObjCnt = 0;
int cmxObjCnt = 0;
class SoSimple
{
public:
SoSimple()
{
simObjCnt++;
cout << simObjCnt << "번째 SoSimple 객체" << endl;
}
};
class SoComplex
{
public:
SoComplex()
{
cmxObjCnt++;
cout << cmxObjCnt << "번째 SoComplex 객체" << endl;
}
SoComplex(SoComplex& copy)
{
cmxObjCnt++;
cout << cmxObjCnt << "번째 SoComplex 복사 객체" << endl;
}
};
int main(void)
{
SoSimple sim1;
SoSimple sim2;
SoComplex com1;
SoComplex com2 = com1;
SoComplex();
}
[실행결과]
[코드]
#include<iostream>
using namespace std;
class SoSimple
{
private:
static int simObjCnt;
public:
SoSimple()
{
simObjCnt++;
cout << simObjCnt << "번째 SoSimple 객체" << endl;
}
};
int SoSimple::simObjCnt = 0;
class SoComplex
{
private:
static int cmxObjCnt;
public:
SoComplex()
{
cmxObjCnt++;
cout << cmxObjCnt << "번째 SoComplex 객체" << endl;
}
SoComplex(SoComplex& copy)
{
cmxObjCnt++;
cout << cmxObjCnt << "번째 SoComplex 복사 객체" << endl;
}
};
int SoComplex::cmxObjCnt = 0;
int main(void)
{
SoSimple sim1;
SoSimple sim2;
SoComplex com1;
SoComplex com2 = com1;
SoComplex();
}
<참고>
윤성우의 열혈 C++ 프로그래밍
'C++ 언어 > 연습문제' 카테고리의 다른 글
C++언어 연습문제31 (0) | 2022.11.11 |
---|---|
C++언어 연습문제30 (0) | 2022.11.11 |
C++ 언어 연습문제28 (0) | 2022.11.02 |
C++ 언어 연습문제27 (0) | 2022.11.01 |
C++ 언어 연습문제26 (0) | 2022.10.31 |