C++ 如何修复C++;
我正在制作一个简单的数据管理系统,它有3个服务C++ 如何修复C++;,c++,c++11,visual-c++,c++17,C++,C++11,Visual C++,C++17,我正在制作一个简单的数据管理系统,它有3个服务 添加一个学生 查看学生信息 删除学生 代码如下所示: #include <iostream> using namespace std; enum Services { Add=1, View, Del }; class Student { public: string Name; int Age; string Gender; int Class; Stud
#include <iostream>
using namespace std;
enum Services
{
Add=1,
View,
Del
};
class Student
{
public:
string Name;
int Age;
string Gender;
int Class;
Student(string Name,string Gender,int Age,int Class)
{
this->Name=Name;
this->Gender=Gender;
this->Age=Age;
this->Class=Class;
}
};
int main()
{
//Bio Variables
string Name;
string Gender;
int Age;
int Class;
std::cout<<"•Add A Student [PRESS 1]\n•View Student's Information [PRESS 2]\n•Delete A Student [PRESS 3]"<<endl;
//Creating Instance Of Service ENUM
Services Serv;
do
{
cout<<"\nWhich Service Do You Want To Access :";
int Service;
cin>>Service;
Service=0;
}while(Serv!=Add || Serv!=View || Serv!=Del || !cin);
}
#包括
使用名称空间std;
枚举服务
{
相加=1,
看法
德尔
};
班级学生
{
公众:
字符串名;
智力年龄;
字符串性别;
int类;
学生(字符串名称、字符串性别、整数年龄、整数类)
{
此->名称=名称;
这->性别=性别;
这个->年龄=年龄;
这个->类=类;
}
};
int main()
{
//生物变量
字符串名;
字符串性别;
智力年龄;
int类;
std::cout如果流处于错误状态(例如读取int
失败),循环条件中的!cin
将返回true
。更不用说@dxiv提到的条件中奇怪的!=
。您可能的意思是:
do
{
cout << "\nWhich Service Do You Want To Access: ";
int Input = 0;
cin >> Input;
Serv = static_cast<Service>(Input);
} while (cin && Serv >= Add && Serv <= Del);
do
{
cout>输入;
Serv=静态_转换(输入);
}当(cin&&Serv>=Add&&ServServ!=Add | | Serv!=View | | Serv!=Del
这将始终是正确的,因为没有Serv
可以等于所有三个值。我猜您的意思是&
。| cin
很难猜这是怎么回事。在循环的第三行,您还手动将服务设置为0,这将结束使用您之前获得的用户输入。@dxiv我后来注意到了。顺便说一句,在这种情况下,我想说如果输入!=int继续again@AtifIqbal请参阅以了解如何实现该功能。