복사 생성자
- 얕은 복사와 깊은 복사로 나눌 수 있다
- 복사 생성자를 정의하지 않으면 디폴트 복사 생성자가 생긴다
- 깊은 복사가 필요하면 직접 정의 해야 함
대입 연산자 오버로딩
- 정의하지 않으면 디폴트 대입 연산자가 생김
- 디폴트 대입연산자는 얕은복사 함
- 연산자 내에서 동적할당 하거나 깊은 복사 필요하면 직접 정의 필요
복사 생성자와 대입 연산자 오버로딩의 호출시점!
복사 생성자는 객체가 새로 생성되는 시점에서 대입을 할 때 호출이 됨
대입 연산자는 객체 두 개가 이미 생성 및 초기화 된 상태에서 대입을 할 때 호출 됨
!대입 연산자 주의할 점!
연산자 내에 동적 할당이 된 경우, 이전에 동적 할당되었던 데이터를 해제해야 함
참조했던 사이트