最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入探討C++父類子類中虛函數(shù)的應(yīng)用

 更新時間:2013年05月28日 12:07:32   作者:  
本篇文章是對C++父類子類中虛函數(shù)的使用進行了詳細的分析介紹,需要的朋友參考下
構(gòu)造函數(shù)不能是虛函數(shù),因為在調(diào)用構(gòu)造函數(shù)創(chuàng)建對象時,構(gòu)造函數(shù)必須是確定的,所以構(gòu)造函數(shù)不能是虛函數(shù)。
析構(gòu)函數(shù)可以是虛函數(shù)。

1.父類Father.h:
復(fù)制代碼 代碼如下:

#pragma once
class Father
{
public:
 Father(void);
 virtual ~Father(void);
 virtual int getCount();
public:
 int count;
};

Father.cpp
復(fù)制代碼 代碼如下:

#include "StdAfx.h"
#include "Father.h"
#include <iostream>
using namespace std;
Father::Father(void)
{
 count = 1;
 cout<<"Father is called. count = "<<count<<endl;
}
Father::~Father(void)
{
 cout<<"~Father is called."<<endl;
}
int Father::getCount()
{
 cout<<"Father::getCount() count = "<<count<<endl;
 return count;
}

2.子類Child.h:
復(fù)制代碼 代碼如下:

#pragma once
#include "father.h"
class Child :
 public Father
{
public:
 Child(void);
 virtual ~Child(void);
 virtual int getCount();
 int getAge();
public:
 int age;
};

Child.cpp
復(fù)制代碼 代碼如下:

#include "StdAfx.h"
#include "Child.h"
#include <iostream>
using namespace std;
Child::Child(void)
{
 count = 2;
 age = 20;
 cout<<"Child is called. count = "<<count<<", age = "<<age<<endl;
}
Child::~Child(void)
{
 cout<<"~Child is called."<<endl;
}
int Child::getCount()
{
 cout<<"Child::getCount() count = "<<count<<endl;
 return count;
}
int Child::getAge()
{
 cout<<"Child::getAge() age = "<<age<<endl;
 return age;
}

3.測試類Test.cpp
復(fù)制代碼 代碼如下:

#include "stdafx.h"
#include  <cstdlib>
#include <iostream>
#include "Child.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
 Father *father1 = new Father();
 cout<<"father1 count = "<<father1->getCount()<<endl;
 delete father1;
 cout<<"************** father1 end *****************"<<endl<<endl;
 Father *father2 = new Child();
 cout<<"father2 count = "<<father2->getCount()<<endl; // father2 don't have getAge() method
 delete father2;
 cout<<"************** father2 end *****************"<<endl<<endl;
 Child *child = new Child();
 cout<<"child count = "<<child->getCount()<<endl;
 cout<<"child age = "<<child->getAge()<<endl;
 delete child;
 cout<<"************** child end *****************"<<endl<<endl;
 getchar();
 return 0;
}

4.輸出結(jié)果:
Father is called. count = 1
Father::getCount() count = 1
father1 count = 1
~Father is called.
************** father1 end *****************

Father is called. count = 1
Child is called. count = 2, age = 20
Child::getCount() count = 2
father2 count = 2
~Child is called.
~Father is called.
************** father2 end *****************

Father is called. count = 1
Child is called. count = 2, age = 20
Child::getCount() count = 2
child count = 2
Child::getAge() age = 20
child age = 20
~Child is called.
~Father is called.
************** child end *****************

相關(guān)文章

  • C++實踐排序函數(shù)模板項目的參考方法

    C++實踐排序函數(shù)模板項目的參考方法

    今天小編就為大家分享一篇關(guān)于C++實踐排序函數(shù)模板項目的參考方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • C語言算法練習(xí)之?dāng)?shù)組元素排序

    C語言算法練習(xí)之?dāng)?shù)組元素排序

    這篇文章主要為大家介紹了C語言算法練習(xí)中數(shù)組元素排序的實現(xiàn)方法,文中的示例代碼講解詳細,對我們學(xué)習(xí)C語言有一定幫助,需要的可以參考一下
    2022-09-09
  • C語言函數(shù)棧幀的創(chuàng)建和銷毀介紹

    C語言函數(shù)棧幀的創(chuàng)建和銷毀介紹

    大家好,本篇文章主要講的是C語言函數(shù)棧幀的創(chuàng)建和銷毀介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2021-12-12
  • C語言實現(xiàn)經(jīng)典掃雷小游戲完整代碼(遞歸展開?+?選擇標(biāo)記)

    C語言實現(xiàn)經(jīng)典掃雷小游戲完整代碼(遞歸展開?+?選擇標(biāo)記)

    這篇文章主要介紹了C語言小項目之掃雷游戲帶遞歸展開?+?選擇標(biāo)記效果,本代碼中,我們用字符?!?來標(biāo)識雷,文中附有完整代碼,需要的朋友可以參考下
    2022-05-05
  • C語言之實現(xiàn)棧的基礎(chǔ)創(chuàng)建

    C語言之實現(xiàn)棧的基礎(chǔ)創(chuàng)建

    這篇文章主要介紹了C語言之實現(xiàn)棧的基礎(chǔ)創(chuàng)建,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 基于c語言知識點的補遺介紹

    基于c語言知識點的補遺介紹

    本篇文章是對c語言知識點的一些補遺進行詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C++ namespace案例詳解

    C++ namespace案例詳解

    這篇文章主要介紹了C++ namespace案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C語言的字符函數(shù)和字符串函數(shù)詳解

    C語言的字符函數(shù)和字符串函數(shù)詳解

    這篇文章主要為大家詳細介紹了C語言的字符函數(shù)和字符串函數(shù),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • c語言多進程tcp服務(wù)器示例

    c語言多進程tcp服務(wù)器示例

    這篇文章主要介紹了c語言多進程tcp服務(wù)器示例,多進程socket,epoll實現(xiàn)IO復(fù)用,需要的朋友可以參考下
    2014-03-03
  • C語言goto語句簡單使用詳解

    C語言goto語句簡單使用詳解

    C語言中提供了可以隨意濫用的 goto語句和標(biāo)記跳轉(zhuǎn)的標(biāo)號,本文主要介紹了C語言goto語句簡單使用詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論

静宁县| 新余市| 泰顺县| 哈密市| 贡嘎县| 新邵县| 晋州市| 波密县| 南安市| 洪湖市| 南溪县| 仙游县| 吉安市| 章丘市| 蛟河市| 东乡县| 乐昌市| 古田县| 兖州市| 醴陵市| 大石桥市| 比如县| 南康市| 高陵县| 全南县| 石屏县| 措勤县| 平远县| 阿鲁科尔沁旗| 涟源市| 双辽市| 大安市| 南阳市| 汉阴县| 米易县| 河西区| 盐城市| 海南省| 长治县| 乳山市| 鹿邑县|