typetraits

Typeigenschaften sind syntaktische Erweiterungen, die es dem Entwickler ermöglichen, zur Kompilierzeit verschiedene Eigenschaften eines Typs zu bestimmen. C ++ - Unterstützung wird durch eine Kombination aus Compilerunterstützung und einer Reihe von Bibliotheksvorlagen bereitgestellt. Der Zugriff auf die Typmerkmale erfolgt über den Header
2
Antworten

C ++: Wie verwende ich type_traits, um festzustellen, ob eine Klasse trivial ist?

In C ++ 0x möchte ich feststellen, ob eine Klasse trivial ist / Standard-Layout hat, so dass ich memcpy (), memset (), etc ... verwenden kann Wie soll ich den folgenden Code mit type_traits implementieren, damit ich bestätigen kann, dass ein...
02.10.2011, 05:03
3
Antworten

Geben Sie die Eigenschaft ein, um die Standardargument-Promotion zu erhalten

[Haftungsausschluss: Ich kenne eine Antwort auf diese Frage. Ich dachte, es könnte von allgemeinem Interesse sein.] Frage: Wie können wir eine Typeigenschaft haben, die den Typ erzeugt, der sich aus der Ausführung von Standard-Argument-Pro...
07.12.2013, 14:14
6
Antworten

"Herkömmlichen" Typ in C # auf Nullable?

Bei einem generischen Typ T in C # frage ich mich, wie man den Typ Q erhält, was gleichbedeutend ist mit T? für nicht-nullbare T und T für bereits nullable T . Die Frage ergab sich aus echtem Code. Ich möchte den Zugriff auf...
28.09.2012, 07:46
1
Antwort

std :: is_default_constructibleT Fehler, wenn der Konstruktor privat ist

Ich habe folgendes Snippet %Vor% Die Bedingungen sind nicht gleich, aber die erste Bedingung funktioniert gut und die zweite Konstruktion gibt einen Fehler, dieser Konstruktor ist privat. Compiler gcc 4.7 ... Also, ist das GCC Bug, oder es i...
25.12.2012, 11:07
1
Antwort

Kann der globale neue Operator basierend auf den Typeigenschaften des zugeordneten Objekts überschrieben werden?

Ich experimentiere mit der Aktualisierung unseres gepoolten Speicherblockzuweisungsspeichers, um die Vorteile von C ++ 11-Typen zu nutzen. Gegenwärtig ist es möglich, die Zuweisung eines beliebigen Objekts an einen beliebigen Ort zu erzwingen...
24.05.2013, 23:29
1
Antwort

Typeigenschaft: Überprüfen Sie, ob die Referenzelementvariable statisch ist oder nicht

Ich möchte überprüfen, ob eine Membervariable einer Klasse statisch ist oder nicht. Die Verwendung von std :: is_member_pointer funktioniert für alle Typen mit Ausnahme von Referenzmembern. %Vor% Live-Beispiel Ich verstehe den Fehler,...
19.04.2016, 06:12
1
Antwort

Erkennen, ob zwei Typen eine Spezialisierung derselben Klassenvorlage sind?

Ich würde gerne wissen, wie man eine Klasse type_traits schreibt, um festzustellen, ob es sich bei zwei Typen um Spezialisierungen derselben Vorlagenklasse handelt. Das große Problem ist, dass es für gemischte Typen / Nicht-Typen Template-Kla...
21.04.2013, 01:20
5
Antworten

Warum werden type_traits mit speziellen Template-Strukturen anstelle von constexpr implementiert?

Gibt es einen Grund, warum der Standard sie als Vorlage struct s anstelle von einfacher boolescher constexpr ? angibt? In einer zusätzlichen Frage, die wahrscheinlich in einer guten Antwort auf die Hauptfrage beantwortet wird, wie würde...
17.01.2012, 14:49
5
Antworten

Vorlage Argument Deduction schlägt mit C ++ 11 type_traits fehl

Ich versuche zu verstehen, wie man C ++ (11) <type_traits> verwendet. Hier ist mein triviales Testprogramm %Vor% Wenn es mit GCC 4.8.1 kompiliert wird, wird es als angezeigt %Vor% Ich habe keine Ahnung, warum GCC den Template...
07.06.2013, 14:14
4
Antworten

Wie kann man mit type_traits Code generieren, der davon abhängt, ob eine Klassenspezialisierung existiert?

HINTERGRUND Ich versuche ein class template Hasher zu schreiben, das auf zwei verschiedene Arten implementiert wird, abhängig davon, ob std::hash<T> für T implementiert wurde: %Vor% Wenn std::hash<T> spezialisiert w...
26.12.2013, 17:08