I'm confused on why exactly I need to use references for the return type and parameter list in this example from my book below. Is their any reason besides that it takes up less memory than having everything being copied over using pass by value? Or does it have to deal more with if I wanted to do cascading?
istream &operator>>( stream &input, PhoneNumber &number)
{
//input whatever
return input;
}
cin >> a >> b >> c;