#include <iostream>

class A
{
public:
    A(){}
	A(const A& a)
	{
		std::cout << "copy ctor\n";
	}
	void operator=(const A& a)
	{
		std::cout << "assign ctor\n";
	}
};

int main()
{
	A a1;
	A a2 = a1;	// copy
	A a3;
	a3 = a1;	// assign
    return 0;
}