[英]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.