2014-01-16 2 views
2

This open-std document은 std :: function이 사용자 정의 할당자를 지원하지만 인터넷에서 아무 것도 찾을 수 없거나 해당 사용자 정의 할당자를 제공하는 방법에 관해서는 usual references을 제안합니다.std :: function이 사용자 정의 할당자를 지원합니까?

내 연구는 사용자 지정 할당자가 boost::function에 구현되었지만 아직 std::function으로 만들지 않았다고 생각합니다.

그래서 std::function C++ 11에서 사용자 정의 할당자를 suuport합니까? C++ 14에서 지원하지 않을 가능성이 가장 높습니다.

+0

@TomKnapen하지만 이제는 "std :: function custom allocator"로 검색하여 답변을 찾을 수 있습니다 :) – Drax

+0

중복으로 표시된 질문은 사용자 정의 할당자를 전달하는 방법에 대해서만 설명하지만 C++ 컴파일러가 지원하는 뉘앙스는 설명하지 않습니다 . –

답변

3

이 표준은 std::function는 아직 지원하지 않는 사용자 정의 할당하지만 일부 컴파일러 (적어도 GCC)를 지원했다. 맞춤 할당자가 std::function으로 작업하는 방법이나 형식 지우기를 사용하는 표준 라이브러리의 다른 클래스 템플릿이 어떻게되는지는 명확하지 않습니다. LWG 2095LWG 2245. 이러한 유형에 대한 IMHO 할당 자 지원은 제대로 처리되지 않았으며 잘 지정되어 있지 않습니다.

N3726은 훨씬 더 큰 변경의 일부로 std::function이 할당자를 사용하는 방법을 명확히하는 몇 가지 변경 사항을 제안합니다.

관련 문제