[C++] 깊은 복사(Deep Copy)와 얕은 복사 (Shallow Copy), 복사 생성자
인트로 깊은 복사와 얕은 복사를 학습하기 전에 알아두면 좋은 지식은 복사 생성자(Copy Constructor)이다. 복사 생성자란 다른 객체로부터 값을 복사해서 새로운 객체를 초기화하는데 사용되는 생성자이다. 복사 생성자를 정의하지 않으면 컴파일러가 자동으로 만들어주며 기본적으로 자신과 동일한 타입의 객체에 대한 레퍼런스(&)를 인자로 받는 생성자이다. 보다 쉬운 이해를 위해 몇 가지 간단한 예제를 보자. 복사 생성자 : 얕은 복사 앞서 언급했듯 복사 생성자를 정의하지 않으면 컴파일러가 자동으로 생성해 준다. 다음 코드는 사용자 정의 복사 생성자로 s2 객체의 초기화가 이루어지는 과정을 보여준다. #include #include using namespace std; class Student { publ..