J'ai trouvé que les résultats sont différents d'un compilateur à l'autre si j'utilise un lambda pour capturer une référence à une variable globale avec un mot clé mutable, puis modifie la valeur dans la fonction lambda. #include <stdio.h> #include <functional> int n = 100; std::function<int()> f() { int &m = …
[basic.scope.pdecl] / 1 du projet de norme C ++ 20 contenait l' exemple (non normatif) suivant dans une note (citation partielle d'avant la fusion de la demande de tirage 3580 , voir la réponse à cette question): unsigned char x = x; [...] x est initialisé avec sa propre valeur …
En C ++ 20, le concept de POD est déconseillé, soi-disant parce que c'est un trait composite insignifiant d'être trivial et de mise en page standard. Cependant, la définition du POD dans le projet C ++ 20 n'est pas exactement "à la fois triviale et standard"; c'est en fait: Une …
Disons que j'ai un shared_ptravec un allocateur personnalisé et un suppresseur personnalisé. Je ne trouve rien dans la norme qui parle de l'endroit où le suppresseur doit être stocké: il ne dit pas que l'allocateur personnalisé sera utilisé pour la mémoire du suppresseur, et il ne dit pas qu'il ne …
Considérer int main() { auto a = new int[0]; delete[] a; // So there's no memory leak } Entre l'initialisation et la suppression de la copie, êtes-vous autorisé à lire le pointeur sur a + 1? En outre, la langue ne permet au compilateur de jeu aà nullptr?
#include <optional> bool f() { std::optional<int> opt; return opt; } Ne compile pas: 'return': cannot convert from 'std::optional<int>' to 'bool' Consultation de référence J'aurais pensé trouver une explication, mais je l'ai lu comme il se doit. Des conversions implicites sont effectuées chaque fois qu'une expression d'un certain type T1 est …
Cppreference a cet exemple de code pour std::transform: std::vector<std::size_t> ordinals; std::transform(s.begin(), s.end(), std::back_inserter(ordinals), [](unsigned char c) -> std::size_t { return c; }); Mais cela dit aussi: std::transformne garantit pas l'application dans l'ordre de unary_opou binary_op. Pour appliquer une fonction à une séquence dans l'ordre ou pour appliquer une fonction qui …
La valeur du thispointeur est-elle garantie constante pendant la durée de vie d'un objet particulier? Je ne peux pas imaginer un cas où cela changerait, mais je ne sais pas si je ne manque pas quelque chose.
JLS : L' opérateur de priorité la plus faible est la flèche d'une expression lambda (->) , suivie des opérateurs d'affectation. Suivi dans quelle direction (priorité croissante, priorité décroissante)? - «suivi» signifie que l'affectation a une priorité plus élevée ou une priorité plus faible (par rapport à l'opérateur de la …
Considérez ce code: void foo() { goto bar; int x = 0; bar: ; } GCC et Clang le rejettent , car le saut pour bar:contourne l'initialisation des variables. MSVC ne se plaint pas du tout (sauf si l'utilisation xaprès bar:provoque un avertissement). Nous pouvons faire une chose similaire avec …
C ++ utilise le streamofftype pour représenter un décalage dans un flux (de fichier) et est défini comme suit dans [stream.types]: using streamoff = implementation-defined ; Le type streamoff est synonyme de l'un des types intégraux de base signés de taille suffisante pour représenter la taille de fichier maximale possible …
Étant donné le modèle de classe suivant: template<typename T> struct Outer { struct Inner; auto f(Inner) -> void; }; nous définissons Innerséparément pour chaque spécialisation Outer: template<> struct Outer<int>::Inner {}; template<> struct Outer<double>::Inner {}; puis définissez la fonction membre fune fois pour toutes les spécialisations de Outer: auto Outer<T>::f(Inner) -> …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.