예를 들어 'Voornaam'을 목록에있는 개체에서 설정하려면 변경하고 싶습니다. 그러나 다른 이유와 함께 목록에 객체를 표시하면 어떤 이유로 변경되지 않습니다.목록에있는 개체에서 변수 변경 (C++)
"showWielrennerGegevens (* iter);"함수를 만들었습니다. 그러면 해당 객체의 모든 변수가 표시됩니다. 이 기능을 실행하면 변경 사항을 볼 수 있습니다. 나는이 목록에 개체를 표시하는 기능을 실행하지만하지
는
가void Interface::wijzigPersoneelslid(Wielerploeg& wielerploegOB){
int input,inputWielrennerID,ingavekeuze;
string ingaveString;
int teller=0;
cout << "Wat voor een type wil je wijzigen?" << endl;
cout << "1 - Wielrenner" << endl;
cout << "2 - Dokter" << endl;
cout << "3 - Mecanicien" << endl;
cin >> input;
switch(input)
{
case 1:{//Wielrenner
cout << "Wielrenner" << endl;
list<Wielrenner> wielrennerslist = wielerploegOB.getWielrennersList();
cout << "Welke wielrenner wil je wijzigen?" << endl;
// Alle objecten afprinten in de lijst
for (list<Wielrenner>::iterator it = wielrennerslist.begin(); it != wielrennerslist.end(); it++){
Wielrenner wielrennerOB = *it;
cout << teller << " - " << wielrennerOB.getVoornaam() << " " << wielrennerOB.getAchternaam() << endl;
teller++;
}
cin >> inputWielrennerID;
// Naar het object gaan
int N = inputWielrennerID; /* index of the element you want to retrieve */
if (wielrennerslist.size() > N){
list<Wielrenner>::iterator iter = wielrennerslist.begin();
std::advance(iter, N);
// 'it' points to the element at index 'N'
Wielrenner wielrennerOB2 = *iter;
//Wielrenner* wielrennerOB2 = *iter;
cout << "\n De geselecteerde wielrenner is: " << endl;
cout << " - " << wielrennerOB2.getVoornaam() << wielrennerOB2.getAchternaam() << endl;
cout << "\n Wat wil je aanpassen?" << endl;
cout << "1 - Voornaam" << endl;
cout << "2 - Achternaam" << endl;
cout << "3 - Telefoon" << endl;
cin >> ingavekeuze;
switch(ingavekeuze)
{
case 1:{ // voornaam
cout << "Ingave voornaam: ";
cin >> ingaveString;
//wielrennerOB2.setVoornaam(ingaveString);
(*iter).setVoornaam(ingaveString);
cout << "object " << endl;
showWielrennerGegevens(*iter);
break;
}
case 2:{ // achternaam
cout << "Ingave achternaam: ";
cin >> ingaveString;
wielrennerOB2.setAchternaam(ingaveString);
cout << "object " << endl;
showWielrennerGegevens(wielrennerOB2);
break;
}
case 3:{ // telefoon
cout << "Ingave telefoon: ";
cin >> ingaveString;
wielrennerOB2.setTelefoon(ingaveString);
break;
}
default:{
cout << "Switch Default waarde - wielrenner wijzig" << endl;
}
}
}// if statement
break;
}// case 1
case 2:{ // dokter
cout << "Dokter" << endl;
break;
}
default:{
cout << "Switch Default waarde - Interface" << endl;
}
} // switch
}
당신이 무엇을 요구하고 있는지 분명하지 않습니다. – juanchopanza