2012-01-26 1 views
0

나는 간단하다 - 우리가 DLL을 만들면 정적 런타임으로 컴파일한다. 코드에서 우리는 std :: allocator를 상속 한 간단한 할당자를 생성 할 것이고, N difrent heaps를 갖는 것이 가능할 것이다. 모든 N 개의 힙에서 메모리 관리를 위해이 라이브러리 힙 (할당자를 가진 라이브러리 힙) 만 사용 하시겠습니까? 그런 할당자를 만드는 법?std :: allocator로부터 상속을 만드는 법은 어떨까요?

+0

표준 할당자가 * stateless *라는 것을 알고 있습니까? –

답변

0

Windows의 경우 개인 힙을 만들려면 입니다. MSDN에서 heap functions을 확인하십시오. 그러나 C++ 표준 라이브러리 할당자는 상태 비 저장 인터페이스를가집니다. 따라서 동일한 유형의 두 할당자를 서로 바꿔야합니다 (하나가 할당 한 메모리는 다른 하나가 해제 할 수 있음).

그래,이 문제를 해결할 수는 있지만 std::allocator을 사용하면 안됩니다.