Suchergebnisse für Anfrage "constexpr"
Kann ich C ++ - Typnamen auf constexpr-Weise erhalten?
Ich möchte beim Kompilieren den Namen eines Typs verwenden. Angenommen, ich habe geschrieben: constexpr size_t my_strlen(const char* s) { const char* cp = s; while(*cp != '\0') { cp++; }; return cp - s; }und jetzt möchte ich haben: template ...
CRTP Kompilierungsfehler
Das Folgende wird mit GCC 5.2 kompiliert, jedoch nicht mit Visual Studio 2015. template <typename Derived> struct CRTP { static constexpr int num = Derived::value + 1; }; struct A : CRTP<A> { static constexpr int value = 5; };s beschwert sich, ...
Warum sollte ich statischen constexpr int in einer Klasse gegenüber enum für Integralkonstanten auf Klassenebene vorziehen?
C ++ 17 Update: static constexpr Variablen sind implizitinline Es ist also keine externe Definition erforderlich. Ursprüngliche Frage: Sagen wir, ich habe eine Liste von Konstanten wie struct Cls { static constexpr int N = 32; static ...
Initialisierung eines Constexpr mit einer const, - int vs float
Ich frage mich, warum die ganze Zahlii wird zur Kompilierungszeit initialisiert, aber nicht das floatff Hier int main() { const int i = 1; constexpr int ii = i; const float f = 1.0; constexpr float ff = f; }Das passiert, wenn ich versuche zu ...
Throw in Constexpr Funktion
Der folgende Code kompiliert unter clang ++ 3.7.0, wird jedoch von g ++ 5.3.1 abgelehnt. Beide haben-std=c++14 Möglichkeit. Welcher Compiler ist richtig? Weiß jemand wo in der Norm darüber geredet wird? Vielen Dank #include <stdexcept> using ...
Selbstinitialisierung einer statischen Constexpr-Variablen, ist sie wohlgeformt?
Gab die folgende Deklaration im globalen Namespace: constexpr int x = x;Ist das wohlgeformt? Der Entwurf des C ++ 14-Standardabschnitts3.6.2 [basic.start.init] sagt: Variablen mit statischer Speicherdauer (3.7.1) oder Thread-Speicherdauer ...
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 ...
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() : ...
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 ...
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 ...