__super
Visual Studio 2005中新增了__super關(guān)鍵字搏恤,它代表本類的基類扎谎。
使用方法
__super::member_function();
實(shí)驗(yàn)得剧罩,該關(guān)鍵詞會自動尋找最近重載的虛函數(shù)調(diào)用贷洲,即連續(xù)重載的各個(gè)類,會調(diào)用最近的重載基類的虛函數(shù)缴啡。
__super代表該基類的空間類名
#include <iostream>
using namespace std;
class base
{
public:
virtual void fun(){ cout << "base" << endl; }
};
class A :public base
{
public:
void fun() override{cout << "A" << endl;}
};
class B :public A
{
public:
void fun() override
{
__super::fun();
cout << "B" << endl;
}
};
void main()
{
B b;
b.fun(); //輸出 A B
}