在c++中,如果派生类没有重写基类中对应virtual函数会怎样?
生活随笔
收集整理的這篇文章主要介紹了
在c++中,如果派生类没有重写基类中对应virtual函数会怎样?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在c++中,如果一個派生類沒有重寫基類中對應的虛函數,那么在派生類的構造函數中依然會創建虛指針,但是該虛指針指向的是基類的虛表。
#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下結果如下:
?在線編譯運行工具:C++ Shell
總結
以上是生活随笔為你收集整理的在c++中,如果派生类没有重写基类中对应virtual函数会怎样?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 简单的C语言程序合集
- 下一篇: Centos7 tomcat优化