如果派生类的函数与基类的函数同名, 但是参数不同. 此时, 不论有无 virtual 关键字, 基类的函数将被隐藏(注意别与重载混淆).
...个人看法:
这个其实也不能说是隐藏, 因为 g(float) 和 g(int) 是不同的函数, C++编译后在符号库中的名字分别是 _g_float 和 _g_int.即使他们都有 virtual...关键字, 但是因为是分别存在与派生类和基类中的不同函数, 所以在不存在覆盖的关系(重载更不可能).
..., vtbl, plus 13.4.4) 中的, 如果不进行动态联编, 程序不会去 vtbl 中查找对应的函数地址, vtbl 中的函数地址是不会被引用到的, 也就不会被调用了.
...重要查考: 《C++ Primer》第480页 "关键概念:C++ 中的多态性".
《C++ Primer plus》13.4.4 虚拟成员函数和动态联编.