我创建了一个名为employee的结构,并且#34; emp.id"是员工ID。
当用户输入ID时,它不应与之前用户可能输入的先前ID相匹配。
这只是主程序的一个功能,它验证员工ID是唯一的。
代码正在运行,但是当我打印时,它会将id的最后一个值分配给所有ID。
请帮忙。
void uniqueid()
{
int check=1;
string code;
string tempemp1;
cout<< "enter id";
while(check) {
cin >> code;
check = 0;
for (int i = 0; i < num; ++i) {
if (emp[i].id.compare(code)==0) {
check = 1;
cout << "enter id again";
break;
}
}
if (check==0) {
emp[i].id=code;
}
}
}
答案 0 :(得分:0)
您的示例中似乎缺少一些非常重要的代码;即定义num
和emp
等等......
但是,从粗略的检查来看,在成功添加新员工之后,似乎缺少num
增加的内容。
此外,也许你还没有学会它,但在涉及独特性的情况下,std::set
将成为你的朋友;但是在你所描述的那种情况下,你可能最终会使用std::map
。