[C++] 스마트 포인터 사용하기 I (unique_ptr)


[C++] 스마트 포인터 사용하기 I (unique_ptr)

애써 배운걸 까먹을까봐 그러기 전에 미리 정리해놓은 C++ 노트입니다. C++ 강좌는 오랜만이네요. 36번째입니다. 이번에는 C++에서 표준으로 지원하는 스마트 포인터(smart pointer)라는 것은 몇 가지 예제와 함께 살펴보고 또 이게 어떻게 쓰이는 건지 이해해 봅니다. 예전에는 그냥 C/C++로 개발할거면 "당연히" 포인터 까짓것 잘 하면 알아서 되겠지(특히 동적 메모리 할당 부분) 하는 마인드가 꽤 있었지만(부끄럽게도 저 또한 그랬습니다.), 시간이 지나면서 포인터를 통해 발생하는 취약점과 버그들을 보니 더이상 좌시(?)할 수 없었는지, C++에서도 동적으로 메모리를 할당하고 관리하는데 있어 안전함을 기하기 위해 포인터를 한 단계 더 발전시킨 스마트 포인터라는 것을 내놓게 되었습니다. 우선 기존 포인터의 문제점을 한번 살펴봅시다. 먼저 아주 흔한 사례를 한번 봐 볼까요? 여기 아래 간단한 예시 클래스가 있습니다. Box라는 클래스인데, ID라는 값을 Box 클래스의 인스턴...


#class #클래스 #예제 #스마트포인터 #설명 #설계 #사용법 #객체지향 #unique_ptr #RAII #OOB #memory #make_unique #CPP #포인터

원문링크 : [C++] 스마트 포인터 사용하기 I (unique_ptr)