C++/Tips
[c++]SmartPointer
=> 동적할당시, 원래는 new로 할당을 받고, delete로 삭제해야함. => Java처럼, 사용이 끝난 메모리를 자동으로 해제해주는 포인터 1. 종류 => unique_ptr -> 객체의 유일한 소유권을 부여함으로써, 소유권을 보유할때만 소멸자가 해당 객체를 삭제할 수 있게 하는 포인터 -> "유일한 소유권"이기 때문에, 동시에 두개 이상이 되서는 안됨[동일한 객체를 가질 수 없음] -> 또한 소유권의 이전이 불가능하여, 이전 소유권을 소멸시키고, 새 소유권을 생성해야함 => shared_ptr -> 객체에 대한 소유권을 여러 스마트포인터가 공유하면서 참조 카운트 방식을 사용 -> 참조 카운트가 0이 되면 데이터를 해제 -> 참조 카운트 덕분에 명시적으로 메모리 해제 시점을 알 수 있음 -> Dead..
2021. 2. 2. 16:10