C++ 如何保存用于比较的变量
您好,我不确定如何保持变量,比如说C++ 如何保存用于比较的变量,c++,C++,您好,我不确定如何保持变量,比如说lastWordLoaded,然后用它与字典中加载的下一个单词进行比较,下一个单词是word 我有一个方法compareWords,如果lastWordLoaded>CurrentWord,它将打印出-1,因此这意味着它不是按字母顺序排列的,如果lastWordLoaded
lastWordLoaded
,然后用它与字典中加载的下一个单词进行比较,下一个单词是word
我有一个方法compareWords
,如果lastWordLoaded>CurrentWord,它将打印出-1,因此这意味着它不是按字母顺序排列的,如果lastWordLoadedlastWordLoaded
Dictionary::Dictionary() {
//check if the file was opened
if (dictionaryFile.is_open()) {
while (getline(dictionaryFile, word) &&
getline(dictionaryFile, definition) &&
getline(dictionaryFile, type) &&
getline(dictionaryFile, blank)) {
myWords[wordCount] = fromRecord(word, definition, type);
if (compareWords(word, lastWordLoaded) != 0)
{
cout << "\nThe dictionary isnt in alphabetical order." << endl;
cout << "Error at word = " << getWordCount() << endl;
system("Pause");
}
}
//close the file
dictionaryFile.close();
}
Dictionary::Dictionary(){
//检查文件是否已打开
if(dictionaryFile.is_open()){
while(getline(字典文件、word)&&
getline(字典文件,定义)&&
getline(字典文件,类型)&&
getline(字典文件,空白)){
myWords[wordCount]=fromRecord(单词、定义、类型);
if(compareWords(word,lastWordLoaded)!=0)
{
cout将lastWordLoaded
保存在一个变量中,并在循环结束时进行如下更新:
string lastWordLoaded = "";
while (getline(dictionaryFile, word) &&
getline(dictionaryFile, definition) &&
getline(dictionaryFile, type) &&
getline(dictionaryFile, blank)) {
myWords[wordCount] = fromRecord(word, definition, type);
if (compareWords(word, lastWordLoaded) != 0)
{
cout << "\nThe dictionary isnt in alphabetical order." << endl;
cout << "Error at word = " << getWordCount() << endl;
system("pause");
}
lastWordLoaded = word;
}
string lastWordLoaded=“”;
while(getline(字典文件、word)&&
getline(字典文件,定义)&&
getline(字典文件,类型)&&
getline(字典文件,空白)){
myWords[wordCount]=fromRecord(单词、定义、类型);
if(compareWords(word,lastWordLoaded)!=0)
{
你为什么不让我们更容易一点,保持简洁,只发布代码的一部分呢?抱歉,清理一下。你为什么不能只做“else lastWordLoaded=word;”这对我的场景有效吗?你是如何声明word的?如果它是std::string,它应该有效。