기초

깊은 복사 / 앝은 복사

알쿠미 2015. 12. 7. 20:56

* 개요

 객체가 복사 된다는 것은 기존 객체와 같은 값을 가지는 새로운 객체를 만든다. 라는 것 객체가 가진 값 형식(Value Type)과 참조형식(Reference Type)의 복제 방식에 따라 얕은복사와 깊은복사로 개념이 나뉜다.

* 얕은 복사(Shallow Copy)

참조하는 것으로 값 자체를 복사해 놓은 것이 아니기 때문에 참조하는 것을 삭제할 경우를 잘 고려해야한다. ex) 복사생성자

* 깊은 복사(Deep Copy)

값 자체를 복사하는 경우로서 각각 다른 메모리 공간을 할당하기 때문에 얕은 복사에서와 같은 삭제시의 문제점은 없다.