2017-10-16 31 views
-1

Je dois faire un programme C++ pour gérer des comptes bancaires. Mais je suis coincé. J'ai besoin d'afficher les différents comptes, pour en sélectionner un et faire des choses sur le compte sélectionné. Je fais le choix dans un cas de commutation, mais je voudrais que le « cas » être dynamique (une autre partie du programme est fait pour ajouter compte)Utilisation de var pour un cas de commutateur

switch (choixMenu) 
    { 
    case 1: 
     //Consulter un compte 
     do { 
      cout << endl << " ----------------------- CONSULTATION -----------------------" << endl << endl; 
      cout << "Choisir le compte a consulter : \n" << endl; 
      while (nCompte != NULL) { 
       int numCompte = 1; 
       int *ptr (0); 
       ptr = &numCompte; 
       cout << numCompte << " - " << nCompte << cid << endl; 
       numCompte++; 
       switch (choixConsul) { 
       case ptr : 
       } 
      } 
      cin >> choixMenu; 

      if (choixMenu != 1 && choixMenu != 2 && choixMenu != 3) 
      { 
       cout << "Choix invalide !" << endl; 
      } 

     } while (choixConsul != 3); 

(compte = compte) Y at-il façon de faire l'affaire avec un var? Une boucle pour afficher le compte différent et un cas dans une boucle pour sélectionner chaque compte? Merci pour votre aide! :)

+0

Désolé, j'ai supprimé à tort "Hello everyone!" tout en l'affichant :( – MUGO

+0

Ce n'était pas _ "faussement supprimé" _ c'est sûr. – user0042

Répondre

1

Une solution dynamique est d'utiliser des tables:

struct Menu_Entry 
{ 
    std::string option_text; 
    void (*p_action_function)(); 
} 

std::vector<Menu_Entry> menu; 

Avec un système axé sur la table, vous pourriez avoir une fonction qui affiche toutes les sélections, déréférence alors un pointeur de fonction associée au choix du menu.

Plusieurs menus peuvent être affichés et traités en passant un vecteur de sélections de menu à la fonction de traitement de menu.

Le std::string peut être remplacé par un tableau de caractères afin de permettre des données statiques constantes.