c++中为什么在非虚函数里调用虚函数也能实现动态绑定

2025-04-07 04:01:16
推荐回答(1个)
回答1:

只要是非静态的成员函数,在编译器看来,里面的函数名方式调用在实质上都是this.func();方式的,即通过指针方式的,所以也能实现动态绑定的。除非在非静态的成员函数里面直接用对象身份显示调用函数(范例:m.fun()或者(*p).fun()),而不是直接函数名式的(范例:func(a)).