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

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

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

2020-01-26 13:42:23
字體:
來源:轉載
供稿:網友

本文實例講述了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++程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 崇礼县| 柘荣县| 榆树市| 兰州市| 墨竹工卡县| 清苑县| 黎川县| 海兴县| 芦溪县| 广昌县| 庆阳市| 清原| 新竹县| 九龙城区| 开鲁县| 浪卡子县| 阳西县| 洪湖市| 丰顺县| 阿拉善左旗| 冀州市| 乾安县| 毕节市| 交城县| 开封市| 随州市| 澄迈县| 铜川市| 蕉岭县| 贺兰县| 搜索| 邯郸县| 舟曲县| 蕲春县| 巴彦淖尔市| 涿鹿县| 金乡县| 绥德县| 工布江达县| 大名县| 白朗县|