I have seen code that defines a copy assignment operator to return a const reference, e.g.
const MyClass & operator= (const MyClass &);
I'm confused about the intention, and how such operator can be used.
For example, let's say I use it to do something like a = b (a and b are objects of MyClass). Wouldn't that require a to have been declared as const, and if so, wouldn't that mean that I cannot modify a? (i.e. what's the point?)