父类virtual type funcname(arg);

子类type funcname(arg);

type funcname arg完全一致就算子类重写了。覆盖了基类的func。

还可以 子类直接写个override  

example : 

type funcname(arg) override;这个是C++11的,需要编译器支持

父类中virtual type funcname(arg) =0;是纯虚函数

继承的时候用virtual public就是把基类声明为虚拟的,继承基类的一份拷贝。这时候是虚继承 这个公共基类是虚基类。

总结一下:

重载 同一个类,函数名相同, 参数不同。

重写 就要基类有virtual关键字 子类不一定有 函数名一致,参数一致。