스마트 포인터(smart pointer)
스마트 포인터(smart pointer) C++에서는 new 키워드를 사용하여 동적으로 할당받는 메모리는 반드시 delete 키워드를 사용하여 해제해야 한다. 하지만 스마트 포인터는 포인터처럼 동작하는 클래스 템플릿으로, 사용이 끝난 메모리를 자동으로 해제해 준다. 스마트 포인터 종류 shared_ptr 어떤 하나의 객체를 참조하는 스마트 포인터의 개수를 참조하는 스마트 포인터이다. 이렇게 참조하고 있는 스마트 포인터의 개수를 참조 카운트라고한다. 참조 카운트는 해당 메모리를 참조하는 포인터가 몇개인지 나타내는 값을 말한다. unique_ptr 하나의 스마트 포인터만이 객체를 가리킬 수 있도록 한다. shared_ptr과 다르게 참조 카운트가 1을 넘길 수 없다. weak_ptr 하나 이상의 shared..
2022.03.23