я хочу изменить мой переменной передается в качестве аргумента этой функции:C++ переменная аргумент Функция изменения в
bool verifyStudent(string id, string name, int grade, int points, string type) {
if(!verifyId(id)){
cerr << "Please enter 8 charactes id! format: YYMMDDCC\n";
cin >> id;
return false;
} else
if(!verifyName(name)){
cerr << "Please enter name to 35 characters!\n";
cin >> name;
return false;
} else
if(!verifyGrade(grade)){
cerr << "Please enter class between 8 and 12!\n";
cin >> grade;
return false;
} else
if(!verifyPoints(points)){
cerr << "Please enter points between 0 and 300!\n";
cin >> points;
return false;
} else
if(!verifyType(type)){
cerr << "Please enter 1 charater type! format: R,r - regional, D,d - district, N,n - national, I,i - international\n";
cin >> type;
return false;
} else {
return true;
}
}
, как я должен получить доступ к данной переменной и изменить его, когда он не проверяется другой функцией?
вот так, как я вызвать функцию:
verifyStudent(iId, iName, iGrade, iPoints, iType);
Хотя я с радостью отвечаю на эти вопросы, считайте, что это базовое знание C++, которое можно найти и изучить в любых книгах или учебниках в первых главах/уроках. – Vincent
Каждый вызов 'verifyStudent' позволяет исправлять не более одного значения и не проверяет исправление, поэтому, надеюсь, вы вызываете его в цикле ala' while (! VerifyStudent (iId, iName, ...))); ', но тогда в реалистичных системах хорошо иметь возможность для них отменить операцию, если они понимают, что у них нет всей информации, и т. д. –
Возможный дубликат [Когда я изменяю параметр внутри функция, тоже ли она изменяется для вызывающего?] (http://stackoverflow.com/questions/1698660/when-i-change-a-parameter-inside-a-function-does-it-change-for- заместитель вызывающего абонента тоже) –