객체 복사

객체 복사 함수는 주어진 객체의 모든 데이터 멤버 및 모든 기본 클래스 부분을 빠뜨리지 말고 복사해야 한다. 클래스의 복사 함수 두 개를 구현할 때, 한쪽을 이용해서 다른 쪽을 구현하지 마라. 그 대신, 공통된 동작을 제3의 함수에다 분리해 놓고 양쪽에서 호출해라. 객체를 복사할 때 주의할 점 객체의 안쪽 부분을 캡슐화한 객체 지향 시스템 중 설계가 잘 된 것들을 보면, 복사 함수가 복사 생성자와 복사 대입 연산자 딱 둘만 있다. 이러한 복사 함수는 컴파일러가 필요에 따라 만들어내기도 한다. 컴파일러가 만든 복사함수는 기본적인 요구에 충실히 동작한다. 복사되는 객체가 갖고 있는 데이터를 빠짐없이 복사한다. 객체 복사 함수를 선언하는 것은 컴파일러가 생성하는 것보다 추가적인 동작을 하기 위해서일 것이다. ..