У меня есть переменная, которая содержит оценку за игру.
Моя переменная доступна и правильна вне оператора if, но не внутри, как показано ниже
счет объявлен вверхуmain.cpp и вычисляется в функции отображения, которая также содержит код, приведенный ниже
cout << score << endl; //works
if(!justFinished){
cout << score << endl; // doesn't work prints a large negative number
endTime = time(NULL);
ifstream highscoreFile;
highscoreFile.open("highscores.txt");
if(highscoreFile.good()){
highscoreFile.close();
}else{
std::ofstream outfile ("highscores.txt");
cout << score << endl;
outfile << score << std::endl;
outfile.close();
}
justFinished = true;
}
cout << score << endl;//works
РЕДАКТИРОВАТЬ: понял мою проблему, когда я печатал его много раз, поэтому я не виделиз них первый цикл не сработал, поэтому я подумал, что остальные работали, хотя на самом деле они не были на первой итерации.