Suchergebnisse für Anfrage "constexpr"

2 die antwort

Warum können nicht statische Datenelemente nicht constexpr sein?

Dies ist ein gültiger Code: struct S { constexpr S(int x, int y): xVal(x), yVal(y) {} constexpr S(int x): xVal(x) {} constexpr S() {} const int xVal { 0 }; const int yVal { 0 }; };Aber hier möchte ich wirklich @ deklarierxVal undyVal ...

2 die antwort

Warum ist `std :: initializer_list` nicht als Literaltyp definiert?

Dies ist ein Follow-up dieser Frage:Ist es legal ein constexpr initializer_list Objekt zu deklarieren? [https://stackoverflow.com/questions/16063123/is-it-legal-to-declare-a-constexpr-initializer-list-object] . eit C ++ 14 ist ...

2 die antwort

Verstehen des Beispiels zur Umwandlung von lWert in rWert

Ich habe Schwierigkeiten zu verstehen, wie dieser Code (ein Beispiel aus dem C ++ 14-Standardentwurf [conv.lval]) ruft undefiniertes Verhalten für @ ag(false). Warum tutconstexpr das Programm gültig machen? Auch was bedeutet "greift nicht auf @ ...

TOP-Veröffentlichungen

2 die antwort

it Lambda erfasster Constexpr-Wert als Array-Dimensi

GCC undClang kompiliere den folgenden Code: void Test() { constexpr int Size = 3; auto Lambda = [Size]{ int Dim[Size]; }; } Jedoch,VisualStudio 2015 CTP 6 nicht. Trotzdem sind alle 3 Compiler mit diesem Code zufrieden: void Test() { static ...

2 die antwort

Warum benötigt das statische constexpr-Element (der Typklasse) eine Definition?

==> Den vollständigen Code und die Zusammenstellung finden Sie unter coliru [http://coliru.stacked-crooked.com/a/e6ebe0ef8a87b601]. Ich habe ein LiteralType [http://en.cppreference.com/w/cpp/concept/LiteralType] Klasse Füllungconstexpr ...

2 die antwort

Template-Tricks mit const char * als nicht typisiertem Parameter

Ich bin mir sehr wohl bewusst, dass direkt ein @ vorbconst char* als Nicht-Typ-Parameter für Vorlagen ist fehlerhaft, da zwei identische Zeichenfolgenliterale, die in zwei verschiedenen Übersetzungseinheiten definiert sind, möglicherweise ...

2 die antwort

why constrexpr-Konstruktoren für Klassen mit nicht-trivialen Destruktoren deklarieren (z. B. unique_ptr, std :: variant)

Soweit ich verstehe (zumindest fürc++14), ein Destruktor kann nicht @ seconstexpr wenn es nicht trivial ist (implizit generiert oder=default). Was ist der Sinn der Deklaration vonconstexpr Konstruktoren für Strukturen mit nicht-trivialen ...

2 die antwort

Wie erzwinge ich die Weitergabe von Konstanten über eine Inline-Funktion?

Ich versuche, den Pre-Prozessor dazu zu zwingen, etwas zu rechnen, damit eine Konstante in die Inline-Assembly übertragen wird. Hier ist der reduzierte Fall: inline unsigned int RotateRight(unsigned char value, unsigned int amount) ...

2 die antwort

Statische Constexpr-Variablen und -Klassen in einer Struktur initialisieren

Hier ist mein Arbeitscode Beispiel: #include <iostream> template<typename B> class b { public: int y; constexpr b(int x) : y(x) { } constexpr void sayhi() { std::cout << "hi" << std::endl; } }; template<int x> struct A { static constexpr b<int> ...

2 die antwort

C ++ 14: Initialisierung von Constexpr-Variablen aus Parameterwerten

Say Ich habe eine Klasse, die einen konstanten Ausdruck durch ein @ zurückgeben kaconstexpr Funktion: template<int N> struct Foo { constexpr int Bar() const { return N; } };Wenn ich Constexpr-Werte von @ initialisieren wollFoo::Bar(), wie soll ...