태그: make_unique
4편
-
C++ malloc vs new vs make_unique: 메모리 할당 방식별 안전성 비교
C++ malloc, new, make_unique를 생성자 호출·타입 안전성·실패 처리(nullptr, bad_alloc, nothrow)·예외 안전성으로 비교하고, 속도 차이가 거의 없는 이유와 벤치마크가 0ms로 나오는 이유까지 정리합니다.
-
C++ make_unique·make_shared: new보다 나은 이유와 make 함수를 쓰면 안 되는 경우
make_unique와 make_shared가 new보다 예외에 안전한 이유, make_shared가 객체와 제어 블록을 한 번에 할당해서 얻는 이점과 weak_ptr이 남아 있을 때 메모리가 늦게 해제되는 단점, 커스텀 삭제자나 private 생성자처럼 make 함수를 쓸 수 없는 경우를 설명합니다.
-
스마트 포인터 입문: unique_ptr와 shared_ptr 선택 기준, make_unique·make_shared
C++ 스마트 포인터 기초. unique_ptr와 shared_ptr로 메모리를 자동 관리하는 방법, make_unique·make_shared, 자주 나는 에러와 선택 기준, 성능 비교를 예제로 다룹니다.
-
C++ 스마트 포인터 | 3일 동안 찾지 못한 순환 참조 버그 해결법
Valgrind는 누수가 없다는데 메모리가 계속 늘던 shared_ptr 순환 참조 버그를 출발점으로, unique_ptr의 소유권 이전과 커스텀 삭제자, shared_ptr의 참조 카운팅 구조와 비용, weak_ptr로 순환을 끊는 법과 상황별 선택 기준을 다룹니다.