这是我第一次使用这个网站,所以我会尽力适当地提出我的问题。
我正在研究一个同时处理名字和姓氏的名称类。我遇到的问题是在设置 istream 运算符>>时,我无法弄清楚如何让我的程序确定它是否已到达输入的末尾。例如,如果我只想输入名字并让构造函数处理姓氏。当前的这段代码只会读取名字,但是当我将第一个和最后一个都给它时,它会将它们都读取为名字。
istream& operator>>(istream& is, name& e){
string f;
string l;
is>>f;
if(is.eof())
{
e = name(f);
}
else
{
e = name(f,l);
}
return is;
};
提前感谢您的帮助!