title: Overloading compound assignment operators in C++
body: <p>Why is it necessary when we overload the += operator to return a reference to the class?
  why the prototype is for instance  <code>ClassName&amp; operator += (const ClassName&amp; instance)</code> instead of<br>
  <code>void operator += (const ClassName&amp; instance)</code> ?</p>