Ordinarily, the first parameter of an output operator is a reference to a non
const ostream object. The
ostream is non
const because writing to the stream changes its state. The parameter is a reference because we cannot copy an
The second parameter ordinarily should be a reference to
const of the class type we want to print. The parameter is a reference to avoid copying the argument. It can be
const because (ordinarily) printing an object does not change that object.
To be consistent with other output operators,
operator<< normally returns its
Sales_dataOutput Operator ...