default values for default constructor
and operator[], operator+ is overloaded
[] can be used both in lhs and rhs.
+ is implemented as a friend function so that
it /is with two parameters. lhs is non-mutable.
[you shouldn't attempt to return a reference of a local
object.]
return type is reference and local object reference is
not acceptable.
V.cpp and v_00.cpp will compile with a warning will work ok, but too costly with several constructor and destructor calls.