sdut 6-1 多態(tài)性與虛函數(shù)
來源:程序員人生 發(fā)布時間:2014-11-14 08:01:22 閱讀次數(shù):2804次
6⑴ 多態(tài)性與虛函數(shù)
Time Limit: 1000ms Memory limit: 65536K 有疑問?點這里^_^
題目描寫
通過本題目的練習可以掌握多態(tài)性的概念和虛函數(shù)的定義和使用方法
要求定義1個基類Pet,它有1個成員函數(shù)Speak()用于輸出pet的叫聲。;派生類Dog和Cat從基類Pet派生而來。他們從基類繼承并重新改寫了speak()函數(shù),分別用于輸出Dog類和Cat類的叫聲。要求利用虛函數(shù)編寫代碼,使得程序能夠輸出下面的內容。
輸入
輸出
輸出數(shù)據(jù)共有3行,本題目要求輸出內容必須與示例中的相同。
示例輸入
示例輸出
How does a pet speak ?
miao!miao!
wang!wang!
提示
來源
#include <iostream>
using namespace std;
class Pet
{
public :
virtual void speak()//定義虛函數(shù)
{
cout<<"How does a pet speak ?"<<endl;
}
};
class Cat: public Pet
{
public :
void speak ()
{
cout <<"miao!miao!"<<endl;
}
};
class Dog : public Pet
{
public :
void speak()
{
cout<<"wang!wang!"<<endl;
}
};
int main()
{
Pet p, *t;//定義Pet類對象的指針t
Cat c;
Dog d;
t = &p;//t指針指向p
t->speak();//調用p.speak函數(shù)
t = &c;//t指針指向c
t->speak();//調用c.speak函數(shù)
t = &d;//t指針指向d
t->speak();//調用d.speak函數(shù)
return 0;
}
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈