[英]I am working on a C++ program for my grandmother's birthday, however I keep getting error code: error C2451
我只上过一门 C++ 课程,并计划用不同的东西填充我祖母孩子的名字,我目前所拥有的只是填充物。 但是,当我尝试通过将字符串类型更改为整数来调试自己时,就像它告诉我的那样,然后我只会得到新的错误代码。 这是我目前所拥有的,该程序非常简单:
#include <iostream>
#include <string>
#include <cstring>
using namespace std;
string name;
string main() {
bool done = false;
while (!done) {
cout << "Enter one of your children's names, or press 'q' to quit" << endl;
cin >> name;
if (name = "q") {
done = true;
break;
}
else if (name = "Jason") {
cout << "Jason is your eldest son" << endl;
}
else if (name = "Aaron") {
cout << "Aaron was your second child" << endl;
}
else if (name = "Mandy") {
cout << "Mandy is your only girl" << endl;
}
else if (name = "Adam") {
cout << "Adam came after Mandy" << endl;
}
else if (name = "Ben") {
cout << "Ben is your youngest" << endl;
}
else {
cout << "That name does not exist for your children: try Jason, Aaron, Mandy, Adam, or Ben instead" << endl;
}
}
}
在if and else if
语句中,您需要更改==
而不是=
(赋值)以检查两个操作数的值是否相等。 另外,在您的String main()
我建议仅将其更改为: int main()
只是重申其他人提到的内容
int main()
{
bool done = false;
string name;
while (!done)
{
if (name == "q")
{
done = true;
break;
}
// Remainder of code goes here
} // Close while loop
} // Close main()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.