Suchergebnisse für Anfrage "constexpr"

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

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

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 ...

TOP-Veröffentlichungen

10 die antwort

Warum sind std :: algorithms nicht constexpr und welche könnten das sein?

Warum sind keinestd::algorithm methodsconstexpr? Wenn ich die neuen C ++ 14-Regeln richtig verstehe, könnten viele dieser Methoden @ seiconstexpr. Zum Beispiel, warum kann nichtstd::find Seinconstexpr? static constexpr std::array<char, 4> ...

4 die antwort

Kannst du 'constexpr' hinzufügen, um das Verhalten zu ändern?

Gegeben zwei Programme, bei denen der einzige Unterschied im Quellcode das Vorhandensein oder Fehlen eines @ iconstexpr, kann sich die Bedeutung des Programms ändern? it anderen Worten, wenn es eine Compiler-Option gäbe, die den Compiler ...

4 die antwort

Kann ein constexpr-Mitglied in C ++ 14 ein Datenmitglied ändern?

In C ++ 14, seitconstexpr sind nicht implizitconst mehr kann einconstexpr member-Funktion zum Ändern eines Datenelements einer Klasse: struct myclass { int member; constexpr myclass(int input): member(input) {} constexpr void f() {member = 42;} ...

2 die antwort

Constexpr Kompilierungsfehler mit std :: acos mit clang ++ not g ++

Ich möchte mit der Migration eines Projekts von gcc nach clang ++ experimentieren. Ich gebe Unwissenheit meinerseits zu, ich bin mir nicht sicher, warum das folgende Stück Code template <typename T> constexpr T pi{std::acos(T(-1.0))};compiles ...

4 die antwort

Was bedeutet es, eine Funktion in C ++ zu "vergiften"?

anz am Ende von Scott Schurrs Vortr "Wir stellen vor:constexpr "bei CppCon [https://youtu.be/fZjYCQ8dzTc?t=3679], fragt er "Gibt es eine Möglichkeit, eine Funktion zu vergiften?" Er erklärt dann, dass dies (wenn auch nicht auf standardmäßige ...

4 die antwort

Soweit ich das beurteilen kann, ist die unten stehende Funktion nicht constexpr, aber der Code kompiliert in clang und g ++. Was vermisse ich

Ich habe dieses Beispiel aus §5.19 / 2 in N4140 erhalten: constexpr int incr(int &n) { return ++n; } Soweit ich das beurteilen kann, ist dies keinconstexpr Funktion. Das Snippet wird jedoch in clang und g ++ kompiliert. SehenBeispiel ...

8 die antwort

Warum ist non-const std :: array :: operator [] nicht constexpr?

Ich versuche, ein 2D-Array zur Kompilierzeit mit einer bestimmten Funktion zu füllen. Hier ist mein Code: template<int H, int W> struct Table { int data[H][W]; //std::array<std::array<int, H>, W> data; // This does not work constexpr Table() : ...