IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

constructeur sous la boucle switch


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Par défaut constructeur sous la boucle switch
    bonsoir,
    je suis débutant en C++. le prof de cours nous a demandé de réaliser une application console qui est un simulateur de distributeur bancaire.
    je me retrouve face à ce problème:

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    	switch (type)
    		{
    			case 'V':
    				carte1 C;
    				break;
    			case 'P':
    				carte2 C;
    				break;
    			case 'E':
    				carte3 C;
    				break;
    		}


    le compilateur me dit que "initialization of 'C' is skipped by 'case' label"

    comment faire??
    merci d'avance

  2. #2
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    Salut pour ne plus avoir l'erreur il faut juste rajouter des scope {} pour chaque case

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    switch (type)
    {
      case 'V':
      {
        carte1 C;
        break;
      }
      case 'P':
      {
        carte2 C;
        break;
      }
      case 'E':
      {
        carte3 C;
        break;
      }
    }

    Maintenant smyley a raison de dire qu'il faut que tu passes par un new pour que ton objet existe après la fin du case.

  3. #3
    Membre émérite
    Inscrit en
    Juillet 2005
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 512
    Par défaut
    Citation Envoyé par smyley
    Ensuite tu peut faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    carte C;
    switch(type)
    {
      case 'V': {
        C = new carte1();
        break;
      }
      etc..
    }
    Tu veux dire ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    carte *C;
    switch(type)
    {
      case 'V': {
        C = new carte1();
        break;
      }
      etc..

  4. #4
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Citation Envoyé par Lucien63 Voir le message
    Tu veux dire ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    carte *C;
    switch(type)
    {
      case 'V': {
        C = new carte1();
        break;
      }
      etc..
    yes

Discussions similaires

  1. probleme boucle switch sous fedora 18
    Par hannibal007 dans le forum Débuter
    Réponses: 1
    Dernier message: 22/03/2013, 23h35
  2. [HOWTO] Sous-programmes + boucles
    Par I'm_HERE dans le forum Vos contributions
    Réponses: 8
    Dernier message: 18/03/2009, 21h45
  3. boucle switch liens
    Par luciedoudou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/08/2008, 07h32
  4. Problème de boucle Switch Case
    Par mLk92 dans le forum Langage
    Réponses: 4
    Dernier message: 14/06/2007, 17h20
  5. Pb de constructeur sous VC++
    Par tazamorte dans le forum Visual C++
    Réponses: 2
    Dernier message: 30/08/2006, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo