대입 연산자를 이용한 깊은 복사 디폴트 대입연산자(=)의 문제점은 얕은 복사에 있다. 어떠한 객체를 삭제하면 같은 것을 가리키던 객체도 주소값을 잃어버린다. 이러한 문제점을 방지하기 위해 대입연산자 오버로딩을 이용하여 깊은 복사를 구현해보자. #include #include using namespace std; class Person { private: char* name; int age; public: Person(char* _name, int _age) :age(_age) { name = new char[strlen(_name)+1]; strcpy(name,_name); } Person& operator=(Person& ref) { // 대입연산자(=) 오버로딩 delete[] name; // 원본과..