Questions sur language-lawyer

6
réponses

C++11 a introduit un modèle de mémoire standardisé. Ça veut dire quoi? Et comment cela va-t-il affecter la programmation C++?

C++11 a introduit un modèle de mémoire standardisé, mais qu'est-ce que cela signifie exactement? Et comment cela va-t- ... ading, et ce que le modèle de mémoire signifie en général, s'il vous plaît aidez-moi à comprendre ces concepts. :- )
demandé sur 2011-06-12 03:30:14
5
réponses

Dans CSS Flexbox, pourquoi n'y a-t-il pas de propriétés" justify-items "et" justify-self"?

"1519260920 Considérer" l'axe principal et l'axe transversal d'un conteneur flex:                   ... question principale: Pourquoi il n'y a pas de "justifier-éléments" et "justifier", propriétés?
demandé sur 2015-09-13 18:30:27
7
réponses

Le code C++ peut-il être valide en C++03 et C++11 mais faire des choses différentes?

est-il possible pour le code C++ de se conformer à la fois à la norme C++03 et à la norme C++11 , mais faire des choses différentes selon la norme sous laquelle il est compilé?
demandé sur 2014-04-13 23:12:39
11
réponses

Pourquoi f (i = -1, i = -1) n'est-il pas défini?

je lisais à propos de ordre des violations d'évaluation , et ils donnent un exemple qui me laisse perplexe. ... es opérateurs d'affectation surchargés (au lieu de simples scalaires), alors nous pouvons aussi avoir des problèmes.
demandé sur 2014-02-10 10:31:32
8
réponses

Valide, mais rien de syntaxe dans le cas de commutateur?

par une petite faute de frappe, j'ai accidentellement trouvé cette construction: int main(void) { char foo ... e. un compilateur devrait-il signaler ce code comme inaccessible? Est-ce à servir n'importe quel but?
demandé sur 2017-01-18 22:02:57
1
réponses

Copier / déplacer l'assignation dans std:: vector:: erase() et std::deque:: erase()

dans le processus de réponse une autre question je suis tombé sur des libellés légèrement différents pour std::vector ... e chose, ou c'est un numéro (éditorial) dans la norme? mise à Jour: J'ai soumis un LWG #2477 .
demandé sur 2015-02-02 15:40:04
9
réponses

Est-il sécuritaire de repousser un élément du même vecteur?

vector<int> v; v.push_back(1); v.push_back(v[0]); si le second push_back provoque une réallocation, la réf ... à l'abri? vector<int> v; v.push_back(1); v.reserve(v.size() + 1); v.push_back(v[0]); c'est sûr?
demandé sur 2013-09-13 18:27:29
6
réponses

Lambda de retourner lui-même: est-ce légal?

assez inutile programme: #include <iostream> int main(int argc, char* argv[]) { int a = 5; auto it ... éral, mais sur la légalité de cette manière de faire. question connexe: c++ lambda returning itself .
demandé sur 2018-09-05 22:42:50
2
réponses

Le programme étant compilé différemment dans 3 principaux compilateurs C++. Laquelle est la bonne?

comme suite intéressante (mais sans grande importance pratique) à ma question précédente: pourquoi C++ nous permet ... ter de déclarer variable après avoir juste changer de type avec techniquement son typedef semble sorte de bizarre)
demandé sur 2015-04-16 20:01:25
2
réponses

Quand l'invocation d'une fonction membre d'une instance null entraîner un comportement non défini?

considérons le code suivant: #include <iostream> struct foo { // (a): void bar() { std::cout < ... . est-ce que (a) se traduit par un comportement non défini? Si les deux fonctions (et x ) sont statiques?
demandé sur 2010-03-19 02:20:44
2
réponses

Est-ce que passer un objet C++ dans son propre constructeur est légal?

je suis surpris de découvrir accidentellement que les œuvres suivantes: #include <iostream> i ... Note, Je ne demande pas si c'est utile ou une bonne idée; je bricole juste pour en savoir plus sur les classes.
demandé sur 2015-09-16 15:20:56
8
réponses

Lors de l'utilisation des en-têtes C en C++, devrions-nous utiliser des fonctions de std:: ou l'espace de noms global?

C est un peu, pas exactement, un sous-ensemble de C++. Nous pouvons donc utiliser la plupart des fonctions C/en-têtes ... llo world!); . ma question Est, est-il préférable d'utiliser std::printf(); en C++? Est-il une différence?
demandé sur 2015-09-16 13:26:51
8
réponses

Est "sinon si" un seul mot-clé?

je suis nouveau en C++. Je vois souvent la déclaration conditionnelle comme ci-dessous: if statement_0; else ... ne déclaration if imbriquée dans le else comme ci-dessous? if statement_0; else if statement_1;
demandé sur 2014-06-23 22:42:37
5
réponses

Accès à un membre inactif du syndicat et à un comportement non défini?

j'avais l'impression que l'accès à un membre union autre que le dernier ensemble est UB, mais je n'arrive pas à trouve ... onses affirmant que c'est UB mais sans aucun support de la norme). donc, est-ce un comportement non défini?
demandé sur 2012-07-07 11:37:00
9
réponses

Est-ce que "comportement non défini" permet vraiment *quelque chose* d'arriver? [dupliquer]

cette question a déjà une réponse ici: comportement non défini, non spécifié et dé ... quer comment il permet des optimisations que implémentation-défini comportement ne serait pas permettre.
demandé sur 2015-08-21 07:53:14
6
réponses

Pourquoi les références ne sont-elles pas" const " en C++?

nous savons qu'une" variable const "indique qu'une fois attribuée, vous ne pouvez pas changer la variable, comme ceci: ... que le type de ri devrait être le même que i : quand i est un int const , pourquoi ri n'est pas const ?
demandé sur 2016-06-27 04:40:50
5
réponses

Qu'est-ce que "callback hell" et comment et pourquoi RX résout-il?

peut quelqu'un donner une définition claire avec un exemple simple qui explique ce qui est un" enfer de rappel " pour q ... un exemple simple, pourriez-vous aussi montrer comment RX résout le" callback hell problem " sur cet exemple simple?
demandé sur 2014-08-02 22:18:51
2
réponses

Quand un constructeur privé pas un constructeur privé?

disons que j'ai un type et que je veux rendre son constructeur par défaut privé. J'écris ce qui suit: class C { ... cela me semble être un comportement très surprenant, inattendu, et explicitement indésirable. Pourquoi est-ce OK?
demandé sur 2016-06-03 18:27:21
2
réponses

Pourquoi les machines d'état async sont-elles des classes (et non des structures) dans Roslyn?

considérons cette méthode asynchrone très simple: static async Task myMethodAsync() { await Task.Delay(500 ... poursuite et une meilleure performance en production. Intéressant, merci pour tout le monde ceux qui ont participé!
demandé sur 2015-11-23 15:31:12
3
réponses

Est un pointeur avec la bonne adresse et le type toujours un pointeur valide depuis C++17?

(en référence à cette question et réponse .) avant la norme C++17, la phrase suivante était incluse ... modification de la norme de droit ou il y en a d'autres règles que compenser la suppression de la cité de la phrase?
demandé sur 2018-01-02 17:00:35
3
réponses

Est-il légal de comparer des pointes pendantes?

est-il légal de comparer des pointes pendantes? int *p, *q; { int a; p = &a; } { int b; q = ... q) << '\n'; notez comment les deux p et q pointent vers des objets qui ont déjà disparu. Est-ce légal?
demandé sur 2015-06-07 16:27:11
13
réponses

Prendre l'adresse d'un élément de tableau à un-passé-le-bout via l'indice: legal par la norme C++ ou non?

j'ai vu plusieurs fois que le code suivant n'est pas autorisé par la norme C++: int array[5]; int *array_begin ... lle n'est pas standard C++, pourquoi la décision de les traiter différemment de array + 5 ou &array[4] + 1 ?
demandé sur 2009-06-12 22:08:50
5
réponses

Est-ce que masquer avant un décalage gauche non signé en C/c++ est trop paranoïaque?

cette question est motivée par la mise en œuvre d'algorithmes cryptographiques (par exemple SHA-1) en C/C++, l'écriture ... soit pas traduite en rotation de bits, ce qui signifie que maintenant 4 opérations sont effectuées au lieu de 1.
demandé sur 2016-10-10 21:36:03
3
réponses

Est-il garanti d'être sûr d'effectuer memcpy(0,0)?

Je ne suis pas si versé dans la norme C, alors s'il vous plaît, supportez avec moi. je voudrais savoir si il ... le comportement n'est pas défini... mais peut-on considérer que les régions de mémoire se chevauchent ici ?
demandé sur 2011-03-09 11:17:54
4
réponses

C++ - pourquoi la fonction de membre statique ne peut pas être créée avec le qualificatif 'const'

Aujourd'hui j'ai un problème. Je suis dans le besoin d'un static fonction membre const n'est pas une obligation, mais une meilleure. Mais, je n'ai pas réussi dans mes efforts. Quelqu'un peut dire pourquoi ou comment?
demandé sur 2011-08-12 07:41:32
3
réponses

Pourquoi est une variable const parfois pas besoin d'être capturé dans un lambda?

prenons l'exemple suivant: #include <cstdlib> int main() { const int m = 42; [] { m; }(); // OK ... ur dans les deux cas ( variable 'm' cannot be implicitly captured in a lambda with no capture-default specified ).
demandé sur 2017-04-18 11:19:03
9
réponses

Pourquoi le comportement de std:: memcpy ne serait pas défini pour les objets qui ne sont pas Trivialycopyable?

de http://en.cppreference.com/w/cpp/string/byte/memcpy : si les objets ne sont pas Trivialycopyab ... défini. Mais je suis d'accord qu'il semble possible de contourner UB dans ce cas et cppref modifié conséquent.
demandé sur 2015-04-21 19:03:25
6
réponses

0 est-il octal ou décimal en C? [dupliquer]

cette question a déjà une réponse ici: Est 0 décimal littéral ou octal littérale? ... plaît, dites-moi ce qu'il y a en C? Vont-il faire une différence? Pourquoi sont-elles différentes selon les normes?
demandé sur 2014-10-29 11:02:03
3
réponses

Le compilateur peut-il optimiser l'allocation de tas en tas?

en ce qui concerne les optimisations des compilateurs, est-il légal et/ou possible de changer une allocation de tas en ... it sur des choses comme des allocateurs personnalisés. La norme mentionne-t-elle quelque chose de précis à ce sujet?
demandé sur 2017-11-02 15:54:05
2
réponses

Modification des règles pour les constructeurs protégés en C++17?

j'ai ce cas type: struct A{ protected: A(){} }; struct B: A{}; struct C: A{ C(){} }; struct D: A{ D() = default ... . est-ce que ce changement de comportement fait partie de C++17 ou est-ce un bug dans les deux compilateurs?
demandé sur 2017-12-05 17:33:56