1. 程式人生 > >C++之private虛函數

C++之private虛函數

cout c++ 訪問 return 對象 class 想法 調用 code




一般我們說虛函數,它的訪問級別都是public的,用類對象可以直接調用,這樣就可以實現運行時的類型綁定,那如果我們將虛函數私有化會出現什麽情況呢?是不是很蛋疼的想法。

#include<iostream> class Derived; class Base { public: void doFun() { fun(); } private: virtual void fun() { std::cout << "Base Fun"; } }; class Derived : public Base { private:
virtual void fun() { std::cout << "Derived Fun"; } }; int main() { Base *ptr = new Derived; ptr->doFun(); return 0
; }


結果是 Derived Fun

可見,私有函數的虛方法,調用的時候和public沒啥區別,但是很少這麽用。

C++之private虛函數