gpt4 book ai didi

C++ Evil Hangman 实现问题

转载 作者:行者123 更新时间:2023-11-28 06:58:42 24 4
gpt4 key购买 nike

我正在尝试实现 Evil Hangman 的一个版本,其中游戏会根据最难猜到的内容更改单词。但是我遇到了一个错误,我似乎无法发现它。这可能很愚蠢,但感觉就像我已经盯着它看了好几个小时。在它崩溃之前,我已经通过打印语句将它缩小到这个范围:

vector<string> newWords;
bool inword=false;
int place=0;
cout<<"here 1";
if(!remove){//remove true so only keep words that dont have letter in them.
cout<<" in if(remove) \n";
for(int i=0;i<wordsLeft.size();i++){
cout<<" in first loop \n";
for(int n=0;n<(wordsLeft[i].length())&&!inword;n++){
cout<<"in second loop n: "<<n<<" i: "<<i<<" inword: "<<inword<<" length: "<<wordsLeft[i].length()<<endl;
if(wordsLeft[i].at(n)==letter){
inword=true;
}
}
if(!inword){//if false then add word meaning words not containing letter array
newWords[place]=wordsLeft[i];
place+=1;
}
else{
inword=false;
}
}
cout<<"here 2";
}
else{//remove false so only keep words that have letter in them.
cout<<"here 3";
for(int i=0;i<wordsLeft.size();i++){
for(int n=0;n<(wordsLeft[i].length())&&!inword;n++){
if(wordsLeft[i].at(n)==letter){
inword=true;
}
}
if(inword){//if true then add word meaning words containing letter array
newWords[place]=wordsLeft[i];
place+=1;
inword=false;
}
}
cout<<"here 3.5";
}
cout<<"here 4";
index=place;
wordsLeft=newWords;
}

最佳答案

我还不能添加评论,但是根据你的评论 它说 wordsLeft 没有在范围内声明,这意味着 wordsLeft 在你的第一个循环不可访问。您可能已经在另一个函数的其他地方定义了该变量,或者它可能是私有(private)的。

在定义 wordsLeft 的地方发布,并为下一次:发布错误消息/代码

关于C++ Evil Hangman 实现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22819276/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com