1
我在製作一個小程序。首先,我做了一個頭文件:std :: bad_alloc在內存位置0x002b123c
private:
string UserName, Password;
public:
void setUN(string);
void setP(string);
string getUN();
然後在我的cpp文件:
void UserInfo::setUN(string un){
UserName = un;
}
string UserInfo::getUN(){
return UserName;
}
後,在我主我做一個對象:
UserInfo addUser[100];
添加用戶
cout<<"Enter Username : ";
getline(cin,tUN);
addUser[0].setUN(tUN);
之後,在我的其他功能重刑無效LoginScreen()
我做出了相同的對象:
UserInfo addUser[100];
string EUN, EP;
system("cls");
cout<<"Enter Username : ";
cin>>EUN;
cout<<endl;
cout<<"Enter Password : ";
//cin>>EP;
for(int a = 0; a <= 100; a++){
if (EUN == addUser[a].getUN()){
system("cls");
cout<<"OMG HELP MEEE ";
break;
}
}
它時,直到得到這個for循環,並給出了這個錯誤正常工作:
std::bad_alloc at memory location 0x002b123c
你能告訴我是什麼錯誤意味着什麼,我該如何擺脫這一點。
A <= 100是問題 – billz
以及當我刪除for循環和這個代替 「如果使用( EUN == addUser [0] .getUN())「 if語句也不起作用。 @billz – user2625486