程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> vc教程 >> C++中類的繼承特性

C++中類的繼承特性

編輯:vc教程

整個c++程序設計全面圍繞面向對象的方式進行,類的繼承特性是c++的一個非常非常重要的機制,繼承特性可以使一個新類獲得其父類的操作和數據結構,程序員只需在新類中增加原有類中沒有的成分。

可以說這一章節的內容是c++面向對象程序設計的關鍵。

下面我們簡單的來說一下繼承的概念,先看下圖:

上圖是一個抽象描述的特性繼承表

交通工具是一個基類(也稱做父類),通常情況下所有交通工具所共同具備的特性是速度與額定載人的數量,但按照生活常規,我們來繼續給交通工具來細分類的時候,我們會分別想到有汽車類和飛機類等等,汽車類和飛類同樣具備速度和額定載人數量這樣的特性,而這些特性是所有交通工具所共有的,那麼當建立汽車類和飛機類的時候我們無需再定義基類已經有的數據成員,而只需要描述汽車類和飛機類所特有的特性即可,飛機類和汽車類的特性是由在交通工具類原有特性基礎上增加而來的,那麼飛機類和汽車類就是交通工具類的派生類(也稱做子類)。以此類推,層層遞增,這種子類獲得父類特性的概念就是繼承。

下面我們根據上圖的理解,有如下的代碼:

#include <iostream>
using namespace std;
class Vehicle
{
public:
void EditSC(float speed,int total);
protected:
float speed;//速度
int total;//最大載人量
};
void Vehicle::EditSC(float speed,int total)
{
Vehicle::speed = speed;
Vehicle::total = total;
}
class Car:public Vehicle//Car類繼承Vehicle的特性,Car類是Vehicle的派生類
{
public:
Car()
{
aird=0;
}
protected:
int aird;//排量
};
class plane:public Vehicle
{
protected:
float wingspan;//翼展
};
void main()
{
Car a;
a.EditSC(150,4);
cin.get();
}

派生類的定義可以在類名稱後加冒號public空格加基類名稱進行定義,如上面代碼中的class Car:public Vehicle。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved