在c++中,如果派生类没有重写基类中对应virtual函数会怎样?
生活随笔
收集整理的這篇文章主要介紹了
在c++中,如果派生类没有重写基类中对应virtual函数会怎样?
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在c++中,如果一個(gè)派生類(lèi)沒(méi)有重寫(xiě)基類(lèi)中對(duì)應(yīng)的虛函數(shù),那么在派生類(lèi)的構(gòu)造函數(shù)中依然會(huì)創(chuàng)建虛指針,但是該虛指針指向的是基類(lèi)的虛表。
#include <iostream> #include <string>class Base { public:virtual void foo() {std::cout << "Base::foo" << std::endl; } };class Derived : public Base {};int main() {Base b;Derived d;std::cout << "sizeof(b)=" << sizeof(b) << std::endl;std::cout << "sizeof(d)=" << sizeof(d) << std::endl;return 0; }在X64下結(jié)果如下:
?在線編譯運(yùn)行工具:C++ Shell
總結(jié)
以上是生活随笔為你收集整理的在c++中,如果派生类没有重写基类中对应virtual函数会怎样?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 简单的C语言程序合集
- 下一篇: s3c2440移植MQTT