메모리 주소를 다룬다는 개념 자체는 이해하겠는데, 코딩을 하다 보면 "그래서 이걸 굳이 왜 이렇게 복잡하게 써야 하는가?"라는 근본적인 의문이 항상 따라다녔다.오늘 C++ 객체지향 프로그래밍 관점에서 포인터와 new 연산자를 배우며, 그 의문이 마침내 해소되었다.1. 포인터, 도대체 왜 쓰는 걸까? 포인터를 사용하는 가장 강력한 이유는 바로 '컴파일 시간(Compile-time)'이 아닌 '실행 시간(Runtime)'에 어떠한 결정을 내리기 위해서다.파이썬의 리스트는 데이터를 넣는 대로 무한히 늘어난다. 하지만 C++의 기본 배열은 다르다.C++int arr[100]; // 재래적(절차적) 프로그래밍의 배열 선언 이렇게 코드를 짜면, 프로그램이 실행되기도 전(컴파일 단계)에 이미 100칸짜리 공간이 고정..