C++ menu

Moderators: jkien, Xilvo

Reageer
Berichten: 10

C++ menu

hallo,

ik moet een programma schrijven wat begint in een menu en waarbij je door een bepaalde keuze in een volgend menu terecht komt. dat is allemaal nog niet zo moeilijk, ik heb de twee menu's als twee verschillende void functies geschreven. maar het probleem; als ik vanuit het ene menu terug naar het andere menu wil hoe krijg ik dat voor elkaar.

om het probleem even wat duidelijer weer te geven;

hoofdmenu

-optie een ( doe dit en dat)

-optie twee (afsluiten)

-optie drie (ga naar menu henk)

henkmenu

-optie een (terug naar hoofd)

-optie twee ( bla)

als ik het ene menu onder het andere zet in mijn code, dan kan ik vanuit het ene niet naar het andere verwijzen en vice versa.

hoop dat het probleem een beetje duidelijk is, en dat iemand een oplossing heeft.

mvg, sander

Gebruikersavatar
Berichten: 4.810

Re: C++ menu

Je kan gewoon terug je hoofdmenu functie aanroepen? Maar mss kan je even je code posten, dan kunnen we meer exact antwoorden :D

Gebruikersavatar
Berichten: 829

Re: C++ menu

Maar mss kan je even je code posten, dan kunnen we meer exact antwoorden :D
Ik denk dat dat ook het beste zou zijn.

Of je zou je programma kunnen laten refreshen (maar dan anders dan de defenitie). Ik bedoel dat je een deel van je programma reset, zodat je terug bij het hoofdmenu uitkomt. Maar ik denk dat je beter het deel van de code in kwestie geeft, want het is nogal moeilijk om hierop een algemeen antwoord te geven.
"Als je niet leeft zoals je denkt, zul je snel gaan denken zoals je leeft."

--Vladimir Lenin-- (Владимир Ильич Ульянов)

Berichten: 10

Re: C++ menu

#include <iostream>

using namespace std;

char keuzehoofdmenu;

char keuzeontspanningmenu;

void hoofdmenu () {

cout << "hoofdmenu"<<endl;

cout <<endl;

cout << "selecteer een van de volgende opties, door de eerste";

cout << "letter van de desbetreffende optie in te toetsen gevolgd

door enter."<<endl;

cout << "optie 1: stoppen"<<endl;

cout << "optie 2: lychrel"<<endl;

cout << "optie 3: ontspanning"<<endl;

cin >> keuzehoofdmenu;

if ((keuzehoofdmenu == 's')||(keuzehoofdmenu == 'S')){

cout << "het programma sluit nu af"<<endl;

exit(0);

}//if

if ((keuzehoofdmenu == 'l')||(keuzehoofdmenu == 'L')){

//functie lychrel aanroepen

}//if

if ((keuzehoofdmenu == 'o')||(keuzehoofdmenu == 'O')){

//functie ontspanning aanroepen <--------------------------------------------HIER GAAT HET DUS FOUT.

}//if

else {

cout << "deze optie bestaat niet"<<endl;

ontspanningsmenu ();

}//else

}//hoofdmenu

void ontspanningmenu () {

cout << "ontspanning"<<endl;

cout <<endl;

cout << "selecteer een van de volgende opties, door de eerste";

cout << "letter van de desbetreffende optie in te toetsen gevolgd

door enter."<<endl;

cout << "optie 1: terug naar hoofdmenu"<<endl;

cout << "optie 2: mastermind"<<endl;

cout << "optie 3: woordenboek"<<endl;

cin >> keuzeontspanningmenu;

if ((keuzeontspanningmenu =='t')||(keuzeontspanningmenu == 'T')){

hoofdmenu ();

}//if

if ((keuzeontspanningmenu =='m')||(keuzeontspanningmenu == 'M')){

//functie mastermind aanroepen

}//if

if ((keuzeontspanningmenu =='w')||(keuzeontspanningmenu == 'W')){

//functie woordenboek aanroepen

}//if

else {

cout << "deze optie bestaat niet"<<endl;

//functie ontspanninmenu aanroepen

}//else

}//ontspanningmenu

int main (){

hoofdmenu ();

}//main

ALS IK IN HET EERSTE MENU HET TWEEDE AANROEP KAN DAT NIET OMDAT HET TWEEDE MENU DAN NOG NIET BEKEND IS BIJ DE COMPUTER (OF HOE DAT DAN OOK ZIT)

IK KAN DAT PROBLEEM NIET OPLOSSEN DOOR SIMPELWEG HET TWEEDE MENU TE KOPIEREN EN BOVEN HET EERSTE PLAKKEN, WANT DAN KAN HET TWEEDE MENU HET EERSTE WEER NIET AANROEPEN

Gebruikersavatar
Berichten: 4.810

Re: C++ menu

Je kan bovenaan in je code de functie bekend maken door gewoon de functienaam met bijhorende variabelen te zetten. In jouw geval dus:

Code: Selecteer alles

#include <iostream>

using namespace std;

char keuzehoofdmenu;

char keuzeontspanningmenu;

void ontspanningmenu ();

void hoofdmenu () {

cout << "hoofdmenu"<<endl;

cout <<endl;

cout << "selecteer een van de volgende opties, door de eerste";

cout << "letter van de desbetreffende optie in te toetsen gevolgd

...
In dit geval zal de functie wel bekend zijn bij de compiler en kan je deze dus perfect gebruiken.

Ps: Je kan code binnen code tags plaatsen

Code: Selecteer alles

 [/code ] (zonder de spaties) zodat de tabs blijven staan  :D

Reageer