defaultConfig {
applicationId "com.test.app"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
renderscriptTargetApi 19
renderscriptSupportModeEnabled true
}
这是我用来在名为Friend的类中输入名称和生日的代码。在getline之后(接收带有空格的名字和姓氏)我的程序打印出来"请输入出生日期:"然后中止,因为Date类收到的值不是有效日期。
我相信可能来自getline()的尾随新行被卡在流中并被输入到bday变量的int中,该变量是我一直在使用的Date类的实例,但在使用之后:
void Friend::input(std::istream& ins) {
std::cout << "Please enter a name: ";
getline(ins, name);
ins >> std::ws;
std::cout << "\n\n" << "Please Enter a Birth date in MM/DD/YYYY format: ";
ins >> bday;
std::cout<<"\n\n";
}
由于将无效值插入dbay变量,所以没有任何更改,我的程序仍然中止。所以我不清除流,还是其他问题?
编辑:以下是日期的相关代码
cin >> ws;
要检查的任何值都只是可接受值的数组。