-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
ObjectPool.h Push에는 괄호를 안쓴 이유가 무엇일까요
24.01.21 22:56 작성 조회수 158
0
ObjectPool.h에서 게임서버쪽에서 MakeShared
를 사용할때도 메모리 풀이 적용되게해주는 함수인데
여기서 Push는 왜 괄호를 안쓴걸까요 ??
static shared_ptr<Type> MakeShared()
{
shared_ptr<Type> ptr = { Pop(), Push};
return ptr;
}
GameServer.cpp에서 이미 아래와 같이
인자를 전달해서 그런걸까요..??
왜 이렇게 되는지 궁금합니다..
ObjectPool<Knight>::Push(knights[i]);
답변을 작성해보세요.
1
Rookiss
지식공유자2024.01.21
shared_ptr 생성자에서 받는 인자 순서가
1. 관리할 대상 포인터 2. constructor 함수 (옵션)인데
1은 실제 객체를, 2번은 callable을 받기 때문에 그런 것입니다.
shared_ptr코드를 타고 가서 생성자를 살펴보시면 되겠습니다.
답변 1