이번 글에서는 Deep Copy와 Shallow Copy에 대해서 알아보도록 하자. 데이터 우리가 프로그래밍 중 사용하는 데이터는 크게 두 가지 타입으로 분류할 수 있다. Value Type Reference Type 이 둘의 차이는 데이터를 메모리에 어떻게 저장하느냐에 따라 나뉘게 된다. 프로그램에서 사용하는 메모리 영역 중 힙(Heap)영역과 스택(Stack)영역이 있는데, Value Type의 경우 값을 Stack영역에 저장하고, Reference Type의 경우 실제 데이터는 Stack에 저장한 뒤 해당 메모리의 주소값을 Stack영역에 저장하여 이를 통해 데이터를 불러오게 된다. C언어를 배우신 분들은 포인터에 대해 아실테니 위와 같은 개념을 좀 더 잘 알고 계시리라고 생각한다. Deep Cop..