preguntar acerca de constexpr
2
réponses
Utilisation de «constexpr» pour utiliser le littéral de chaîne pour le paramètre de modèle
J'ai écrit du code pour convertir const char* en int en utilisant constexpr et je peux donc utiliser un const char* comme argument de modèle. Voici le code:
#include <iostream>
class conststr
{
public:
template<std::size_t N> …
demandé sur
1970-01-01 00:33:33
2
réponses
Jeter dans constexpr fonction
Le morceau de code suivant compile sous clang++ 3.7.0 mais est refusé par g++ 5.3.1. Les deux ont l'option -std=c++14. Le compilateur est correcte? Quelqu'un sait où dans la norme en parle? Grâce.
#include <stdexcept>
using namespace std;
…
demandé sur
1970-01-01 00:33:35
3
réponses
Constantes globales en C++11
Quelles sont les meilleures façons de déclarer et définir les constantes globales en C++? Je suis surtout intéressé par la norme C++11 car elle corrige beaucoup à cet égard.
[EDIT (clarification)]: dans cette question, "constante globale" indique u …
demandé sur
1970-01-01 00:33:34
5
réponses
Pourquoi pas un destructeur être marqué constexpr?
En C++, vous pouvez déclarer beaucoup de choses comme constexpr: variables, fonctions (y compris les fonctions des membres et les opérateurs), constructeurs, et depuis C++1z, aussi if instructions et les expressions lambda. Toutefois, la déclaration …
demandé sur
1970-01-01 00:33:37
3
réponses
Constexpr vs macros
où devrais-je préférer utiliser des macros et où devrais-je préférer constexpr?
Ne sont-ils pas essentiellement les mêmes?
#define MAX_HEIGHT 720
et
constexpr unsigned int max_height = 720;
... …
demandé sur
1970-01-01 00:33:37
2
réponses
Dans quelle mesure est-ce que builtin ctz(0) ou builtin clz(0) ne sont pas définis?
arrière-plan
pendant longtemps, gcc a fourni un certain nombre de fonctions de bit-twidling intégrées, en particulier le nombre de 0-bits traînant et menant (également pour long unsigned et long long unsigned , qui ont des suffixes …
demandé sur
1970-01-01 00:33:33
2
réponses
constexpr vs. static const: lequel préférer?
Pour définition des constantes de compilation de l'ensemble des types comme suit (à la fonction et la portée de classe), dont la syntaxe est la meilleure?
static const int kMagic = 64; // (1)
constexpr int kMagic = 64; // (2)
…
demandé sur
1970-01-01 00:33:36
5
réponses
std::max() et std::min() pas constexpr
je viens de remarquer que la nouvelle norme définit min(a,b) et max(a,b) sans constexpr .
exemples de 25.4.7, [alg.min.max]:
template<class T> const T& min(const T& a, const T& b);
template<class T> T min(i …
demandé sur
1970-01-01 00:33:31
6
réponses
enum vs constexpr pour les constantes statiques réelles à l’intérieur des classes
permettez-moi de commencer par énoncer mon intention. Dans les vieux jours (C++), nous aurions le code comme:
class C
{
public:
enum {SOME_VALUE=27};
};
alors nous pourrions utiliser SOME_VALUE tout au long de notre code comme une con …
demandé sur
1970-01-01 00:33:34
13
réponses
Quand devez-vous utiliser la capacité de constexpr en C++11?
il me semble qu'avoir une" fonction qui renvoie toujours 5 "brise ou dilue le sens de"appeler une fonction". Il doit y avoir une raison, ou un besoin pour cette capacité ou elle ne serait pas en C++11. Pourquoi est-il là?
// preprocessor.
# …
demandé sur
1970-01-01 00:33:31