동적 할당자를 사용하기 전에 컨테이너의 인스턴스에 전달할 수있는 STL 구현을 아는 사람이 있습니까?동적/상태 기반 할당자를 사용하는 STL 구현은 무엇입니까?
우리는 많은 메모리 풀을 관리하는 일반 메모리 할당 기가 있으며 stl :: vector의 각 인스턴스에 대해 서로 다른 메모리 풀에서 각 인스턴스를 할당하려고합니다.
표준 STL 구현의 문제는 유형 기반으로 메모리 풀을 정의 할 수 있다는 것입니다. 즉, int 유형의 모든 벡터는 동일한 풀에서 할당합니다.
이미 상태가 할당 된 풀에 대해 기본 stl :: allocator를 스왑 아웃했습니다.하지만이 인스턴스를 할당하려는 풀은 stl :: list에 잘 할당되지 않습니다. 디폴트의 ctor
우리 도서관과 관련된 이유로 우리는 모든 객체에 대한 유효한 풀을 ctor에 가지고 있지 않으므로 사용자가 stl 컨테이너를 사용하기 전에 '메모리 풀 설정'함수를 호출하려고합니다.
누구나 이런 종류의 것을 지원하는 구현을 발견 했습니까?
해당 생성자에서 목록의 헤드 노드를 할당하는 Microsoft STL입니까? 이상적인 STL 구현 (GNU 읽기)은 빈 컨테이너를 만들 때 메모리 할당을 사용하지 않습니다. –
모두 마이크로 소프트와 내 GNU 포트 (gcc 3.4.1 참조)는 모두 ctor에 헤드 노드를 할당합니다. STLPort 다른 한편으로하지 않습니다 그리고 그래서 내 요구 사항을 지원하는 전체 예제 소스에 대한 내 대답을 참조하십시오. – user176168