c++虚函数,虚函数表,虚基类,隐藏指针,通过一个指向子类对象的基类指针,或者引用子类对象的基类引用

2024-12-19 12:01:26
推荐回答(1个)
回答1:

每个含有虚函数声明的类对象都有一个虚函数表,表里是所有的(从基类到派生类的)虚函数,对应有虚函数指针,它们根据指向的对象决定调用哪个函数。 如果注释掉 virtual 根本就不存在虚函数,也没有虚函数表及指针,所以基类指针只会调用基类的方法,而不会调用指针指向的派生类对象的方法。