国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++實現的多重繼承功能簡單示例

2020-05-23 13:30:38
字體:
來源:轉載
供稿:網友

本文實例講述了C++實現的多重繼承功能。分享給大家供大家參考,具體如下:

多重繼承

1. 多重繼承即一個類繼承了多個基類的屬性。

2. 多重繼承下派生類的構造函數必須同時負責所有基類構造函數的調用,

3. 派生類構造函數的參數個數,必須滿足多個基類初始化的需要。

4. 在多重繼承下,當建立派生類對象時,系統首先調用各個基類的構造函數,調用順序與定義派生類時指定的基類順序一致。

多重繼承范例:

#include <iostream>/* run this program using the console pauser or add your own getch, system("pause") or input loop */class A {  private:  float fa;  public:  A(float a = 0)   {    fa = a;  }  float getdata()   {    return fa;  }};class B {  private:  float fb;  public:  B(float b = 0)   {    fb = b;  }  float getdata()   {    return fb;  }};class C:public A,public B {  public:  C(int a=0,int b=0):A(a),B(b)   {  }  int sum()   {    return A::getdata()+B::getdata();  }};int main(int argc, char** argv) {  class C c1(12,23);  class A *a1;  a1 = &c1;//指向派生類的基類指針  //std::cout << c1.getdata() << std::endl; 此時有二義性的問題  std::cout << a1->getdata() << std::endl;  std::cout << c1.B::getdata() << std::endl;  std::cout << c1.A::getdata() << std::endl;  return 0;}

輸出:

12
23
12

希望本文所述對大家C++程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 自治县| 芜湖县| 金溪县| 杭锦后旗| 错那县| 额济纳旗| 江津市| 从化市| 兴文县| 高邮市| 沂水县| 新巴尔虎左旗| 齐河县| 浠水县| 榆林市| 武清区| 泽库县| 龙胜| 罗平县| 武城县| 繁昌县| 上思县| 大庆市| 礼泉县| 固安县| 萍乡市| 靖边县| 西和县| 赤峰市| 宣城市| 屏南县| 南靖县| 遂平县| 济宁市| 万荣县| 临夏县| 长丰县| 阳朔县| 乐亭县| 团风县| 青冈县|