Namensräume
Varianten
Aktionen

std::uses_allocator<std::function>

Von cppreference.com
< cpp‎ | utility‎ | functional‎ | function
 
 
Dienstprogramm-Bibliotheken
Sprachunterstützung
Typunterstützung (Basistypen, RTTI)
Bibliotheks-Feature-Test-Makros (C++20)
Programm-Dienstprogramme
Variadische Funktionen
Coroutine-Unterstützung (C++20)
Vertragsunterstützung (C++26)
Drei-Wege-Vergleich
(C++20)
(C++20)(C++20)(C++20)  
(C++20)(C++20)(C++20)

Allgemeine Hilfsmittel
Relationale Operatoren (in C++20 veraltet)
 
Funktionsobjekte
Funktionsaufruf
(C++17)(C++23)
Identitätsfunktions-Objekt
(C++20)
Transparente Operator-Wrapper
(C++14)
(C++14)
(C++14)
(C++14)  
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)

Alte Binder und Adaptoren
(bis C++17*)
(bis C++17*)
(bis C++17*)
(bis C++17*)
(bis C++17*)(bis C++17*)(bis C++17*)(bis C++17*)
(bis C++20*)
(bis C++20*)
(bis C++17*)(bis C++17*)
(bis C++17*)(bis C++17*)

(bis C++17*)
(bis C++17*)(bis C++17*)(bis C++17*)(bis C++17*)
(bis C++20*)
(bis C++20*)
 
 
Definiert in der Header-Datei <functional>
template< class R, class... ArgTypes, class Alloc >
struct uses_allocator<std::function<R(ArgTypes...)>, Alloc> : std::true_type { };
(seit C++11)
(bis C++17)

Diese Spezialisierung von std::uses_allocator informiert andere Bibliothekskomponenten darüber, dass alle Objekte vom Typ std::function die Uses-Allocator-Konstruktion unterstützen, obwohl sie keinen verschachtelten allocator_type haben.

Inhalt

[bearbeiten] Hinweise

Die Allocator-Unterstützung von std::function war schlecht spezifiziert und inkonsistent implementiert. Einige Implementierungen unterstützten die Uses-Allocator-Konstruktion überhaupt nicht, einige stellten die benötigten Konstruktor-Überladungen bereit, ignorierten aber das übergebene Allocator-Argument, und einige stellten die Überladungen bereit und nutzten den übergebenen Allocator für die Konstruktion, aber nicht, wenn std::function neu zugewiesen wurde. Infolgedessen wurde die Allocator-Unterstützung in C++17 entfernt.

Abgeleitet von std::integral_constant

Member-Konstanten

value
[static]
true
(öffentliche statische Member-Konstante)

Memberfunktionen

operator bool
konvertiert das Objekt zu bool, gibt value zurück
(öffentliche Memberfunktion)
operator()
(C++14)
gibt value zurück
(öffentliche Memberfunktion)

Membertypen

Typ Definition
value_type bool
type std::integral_constant<bool, value>

[bearbeiten] Siehe auch

prüft, ob der angegebene Typ Uses-Allocator-Konstruktion unterstützt
(Klassen-Template) [edit]