當(dāng)前位置:首頁(yè) > IT技術(shù) > 編程語(yǔ)言 > 正文

C++ 父類指針如何調(diào)用子類的變量和函數(shù) 虛函數(shù)virtual實(shí)例
2022-05-11 11:05:22


問(wèn)題:

????類A繼承類B,父類B的指針如何調(diào)用子類A中的變量和函數(shù)?

解決方案:

????在父類B類中定義虛函數(shù)

  1. ?父類中有自己的實(shí)現(xiàn),子類重新實(shí)現(xiàn)
virtual void Show()
{
cout << "A::Show()" << endl;
}

2.?父類沒(méi)有實(shí)現(xiàn),子類自己實(shí)現(xiàn)

virtual void test(int num) = 0;

完成代碼參考如下

#include<iostream>
using namespace std;
class A
{
public:
virtual void Show()
{
cout << "A::Show()" << endl;
}

virtual void test(int num) = 0;

};

class B : public A
{
public:
void Show()
{
cout << "B::Show" << endl;
}

void test(int num){
cout << num << endl;
}

};

int main()
{
A *pa = NULL;

B b;
pa = &b;
pa->Show();
pa->test(3333);

return 0;
}

運(yùn)行結(jié)果

C++ 父類指針如何調(diào)用子類的變量和函數(shù) 虛函數(shù)virtual實(shí)例_子類


參考

解析C++隱藏與覆蓋_Oragen的博客

作者:軟件工程小施同學(xué)

公眾哈:微程序?qū)W堂


本文摘自 :https://blog.51cto.com/s

開(kāi)通會(huì)員,享受整站包年服務(wù)立即開(kāi)通 >