Series Archive

[태그:] 메모리 관리

이 주제와 관련된 글을 시간순으로 정리한 목록입니다.

게임 개발자를 위한 메모리 구조 4 – placement new는 왜 등장했을까?

2026년 5월 12일

이번에는 placement new라는 문법에 대해 살펴보려고 합니다. placement new는 일반적으로 사용하는 new와 문법에서 다소 차이가 있습니다. 사용 방법은 아래와 같습니다. new (memory) Actor(); new와 타입 사이에 메모리 주소가 들어가는 특이한 형태의 문법입니다. 저도 처음…

게임 엔진 프레임워크, 게임 개발 & 프로그래밍, C++

게임 개발자를 위한 메모리 구조 3 – 게임 엔진은 왜 allocator를 직접 구현할까?

2026년 5월 12일

게임 개발을 하거나 게임 개발 공부를 하다보면, 힙에서 사용할 객체를 생성할 때 자연스럽게 new를 사용하게 됩니다. 사전에 객체 생성 시점을 정확하게 예측하기 어렵고, 언제 해제될지도 명확하지 않은 상황이라면 힙 메모리를 사용하는 것이 맞습니다. new를…

게임 엔진 프레임워크, 게임 개발 & 프로그래밍, C++

placement new는 왜 필요할까?

2026년 5월 9일

들어가며 이전 글에서는 allocator를 사용해 직접 구현한 Vector를 개선해봤습니다. 그 과정에서 allocator는 단순 메모리 할당기가 아니라, 메모리 확보와 객체 생명주기를 분리하기 위한 구조라는 이야기를 했습니다. 그리고 allocator를 사용하다 보면 자연스럽게 이런 코드가 등장합니다. allocator.construct(ptr,…

게임 개발 & 프로그래밍, C++

C++ Allocator를 사용해 동적 배열 Vector 개선하기

2026년 5월 9일

들어가며 이전 글에서는 C++ allocator의 기본 개념을 정리했습니다. allocator는 쉽게 말하면 메모리 할당 정책을 컨테이너와 분리하기 위한 구조입니다. 그런데 allocator는 설명만 들으면 조금 추상적으로 느껴질 수 있습니다. 이번 글에서는 직접 구현한 동적 배열 Vector에…

게임 개발 & 프로그래밍, C++

C++ Allocator의 기본 원리와 실무에서의 활용

2026년 5월 9일

들어가며 C++ STL 컨테이너를 보다 보면 이런 코드를 자주 보게 됩니다. std::vector<int, std::allocator> numbers; 그런데 대부분의 경우, allocator는 직접 건드리지 않습니다. 왜냐하면, 기본 allocator만 사용해도 대부분 잘 동작하기 때문입니다. 그래서 처음 allocator를 접하면 이런…

게임 개발 & 프로그래밍, C++

shared_ptr 내부 구조 이해하기 | Control Block, 참조 카운트, make_shared 차이

2026년 5월 6일

🚀 들어가며 이번 글에서는 shared_ptr의 내부 구조 즉, 동작 매커니즘을 살펴보고자 합니다. 이전 글에서는 C++ 스마트 포인터의 기본 개념과 함께 unique_ptr, shared_ptr, weak_ptr의 사용 기준을 살펴봤습니다. 특히 shared_ptr을 설명할 때 중요한 문장이 있었습니다. “객체의…

게임 개발 & 프로그래밍, C++

C++ 스마트 포인터 완전 정리: unique_ptr, shared_ptr, weak_ptr 그리고 면접에서 원하는 답변까지

2026년 5월 6일

🚀 들어가며 C++ 스마트 포인터에 대해 살펴봅니다. C++에서 메모리 관리는 항상 중요한 주제입니다. C++는 사용자(개발자)에게 메모리 관리 책임을 맡기는 대표적인 프로그래밍 언어입니다. 원시 포인터를 직접 다룰 때는 아래와 같이 메모리를 할당하고 해제할 수 있습니다.…

게임 개발 & 프로그래밍, C++