// 构造函数的调用规则
#include <iostream>

using namespace std;

class A
{
public:
    int x, y;
    void show()
    {
        cout << this << " x = " << x << ", y = " << y << endl;
    }
};

int main()
{
    A a1;
    // A a2 = a1; // 自动调用拷贝构造函数 A(const A&obj)

    a1.x = 20;
    A a2 = a1; // 自动调用拷贝构造函数 A(const A&obj)

    a1.y = 30;
    // A a2 = a1; // 自动调用拷贝构造函数 A(const A&obj)

    a1.show(); // 20,30 浅拷贝
    a2.show(); //
    return 0;
}
