## (C++) Not sure what the problem wants me to do.

I have this HW problem, but I cannot figure out what it wants me to do. I don't want anyone to solve it for me, just point me in the right direction.

Suppose that a class hierarchy has a virtual method print
Code:
class C {
virtual void print( ostream& ) const;
};
that outputs C's members to the stream ostream. Write one overload of << so that the statement

Code:
out << p;
outputs p's members to the stream out, where p is any object that belongs to a class in the hierarchy.

What I don't understand is the out << p bit. Am I supposed to be able to do

Code:
out << p;
in my main() and have the overload call p.print() ?
 PhysOrg.com science news on PhysOrg.com >> City-life changes blackbird personalities, study shows>> Origins of 'The Hoff' crab revealed (w/ Video)>> Older males make better fathers: Mature male beetles work harder, care less about female infidelity
 Mentor That is exactly what you are supposed to do. You should probably make your overloaded function obey the semantics of the << operator as used with streams so that given two such objects p and q the following works: Code: out << "Members of p:\n" << p << "\nMembers of q:\n" << q;
 Blog Entries: 6 Recognitions: Homework Help Science Advisor Indeed. So they want you to override operator<<

 Similar discussions for: (C++) Not sure what the problem wants me to do. Thread Forum Replies Calculus & Beyond Homework 1 Introductory Physics Homework 1 Calculus & Beyond Homework 6 Introductory Physics Homework 7 Advanced Physics Homework 1