#include <iostream>
using namespace std;
class Point
{
int x, y;
public:
Point(const Point &p) { x = p.x; y = p.y; }
int getX() { return x; }
int getY() { return y; }
};
int main()
{
Point p1;
Point p2 = p1;
cout << "x = " << p2.getX() << " y = " << p2.getY();
return 0;
}
결과
Compiler Error
🔎
매개변수가 없는 기본 생성자가 정의되어 있지 않기 때문에
Point p1;
을 실행할 때 에러 발생
#include < iostream >
using namespace std;
class Test
{
public:
Test() { cout << "Hello from Test() "; }
} a;
int main()
{
cout << "Main Started ";
return 0;
}
결과
Hello from Test() Main Started
🔎
a
: main 함수가 시작하기 전에 생성되는 글로벌 오브젝트
a
가 생성될 때 생성자 함수가 먼저 호출된 후, main 함수가 실행됨