std::uses_allocator<std::function>
| 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
| (C++11) |
prüft, ob der angegebene Typ Uses-Allocator-Konstruktion unterstützt (Klassen-Template) |