Interdire de déclarer une variable dans un case ? - C++ - Programmation
Marsh Posté le 12-10-2004 à 22:15:57
Peut-être que le compilo la sort du switch pour la gérer, en se "disant" scrongneugneu...
Pour les liens, un espace avant et après http/ /// permet de cliquer directement dessus, la parenthèse trop proche fait partie de l'URL à tort.
Up ! aux pros.
Marsh Posté le 12-10-2004 à 22:28:56
pour faire simple : c'est illégal.
Pour faire compliqué : seul les déclarations sans initialiseurs implicites ou explicites sont autorisées, si je me souviens bien.
Bref ouvre un bloc.
Marsh Posté le 12-10-2004 à 22:11:37
Bonsoir à tous !
Je trouve dans plusieurs cours sur le C++ (comme ici: http://perso.wanadoo.fr/peggs/c742.html ) qu'il est interdit de déclarer une variable dans un des 'case' d'un switch.
J'aimerais (1) connaître la raison de cette interdiction
(2) savoir pourquoi mon compilateur me permet d'enfreindre cette règle. (gcc 3.3.2 sous dev-c++, Windows XP)
Je compile avec les options suivantes, pourtant très restrictives : -W -Wall -std=c++98 -pedantic
Merci !
Message édité par suizokukan le 12-10-2004 à 22:19:03