인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

민규이님의 프로필 이미지
민규이

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

Memory Pool #1

메모리 테이블 질문드립니다

작성

·

338

0

vector<MemoryPool*> _pools;

// 메모리 크기 <-> 메모리 풀

// 0(1) 빠르게 찾기 위한 테이블

MemoryPool* _poolTable[MAX_ALLOC_SIZE + 1];

이부분에서 결국에 

_pools도 = pool을 할당하고

_poolTable도 크기에 맞게 = pool로 할당하면 

_poolTable로 통합해서 사용하면 안되는지 궁금합니다.

답변 1

0

Rookiss님의 프로필 이미지
Rookiss
지식공유자

질문하신게 정확히 이해는 안 가지만
[~해서는 안되는지]는 올바른 질문이 아닙니다.
강의에서 제시한 예제는 말 그대로 예제이고
개인적으로 연구하거나 회사에서 본 방법 중 하나일뿐
당연히 본인이 원하는 스타일로 수정은 적극 권장드립니다.

민규이님의 프로필 이미지
민규이
질문자

제가 제 질문에 확신이 안들어서 질문을 애매하게 말한 것 같습니다

MemoryPool* pool = new MemoryPool(size);

_pools.push_back(pool); 을 넣고

_poolTable[크기] = pool을 넣으면

두개에 동일하게 pool을 넣게되는데 이러면 _pools 변수를 만들필요 없이

_poolTable만 사용하는게 맞는것 같은데 _pools라는 변수를 추가적으로 사용하는 것의 의도가 궁급합니다.

Rookiss님의 프로필 이미지
Rookiss
지식공유자

너무 사소한 부분이고 딱히 엄청난 의도가 있다기 보다는,
중복해서 들고 있지 않아야 삭제할 때
~Memory() 에서 delete를 깔끔하게 할 수 있기 때문입니다.

민규이님의 프로필 이미지
민규이
질문자

아 이해했습니다 감사합니다

민규이님의 프로필 이미지
민규이

작성한 질문수

질문하기