add c++ notes: overload VS virtual function