日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++编程练习:多态实验——设计一个基类Shapes,Shapes类公有派生产生矩形类Rectangle和圆类Circle

發布時間:2024/2/28 c/c++ 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++编程练习:多态实验——设计一个基类Shapes,Shapes类公有派生产生矩形类Rectangle和圆类Circle 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

例、設計一個基類Shapes,包含成員函數display()并聲明為純虛函數。Shapes類公有派生產生矩形類Rectangle和圓類Circle,分別定義display()函數實現其主要幾何元素的顯示。使用抽象類Shapes類型的指針(或引用),當它指向(或引用)某個派生類的對象時,就可以通過它訪問該對象的虛成員函數display()實現動態多態性。

代碼如下:

頭文件:

//頭文件 #include <iostream> #define PI 3.141265 using namespace std; class Shapes { public:virtual void display() = 0; //成員函數dispaly()聲明為純虛函數 };class Rectangle : virtual public Shapes { protected:float x, y; public:float length;float width;Rectangle(){}Rectangle(float a, float b){x = a;y = b;}virtual float getRectangle(){return (x * y);}virtual void display(){cout << "矩形的長為:" << x << endl;cout << "矩形的寬為:" << y << endl;cout << "矩形的面積為:" << getRectangle() << endl;} };class Circle : virtual public Shapes { protected:int r; public:Circle(){}Circle(float R){r = R;}virtual float getCircle(){return PI * r * r;}virtual void display(){cout << "圓的半徑為:" << r << endl;cout << "圓的面積為:" << getCircle() << endl;} };

主函數:

//主函數 #include <iostream> #include "頭文件.h" #define PI 3.141265 using namespace std; int main() {Shapes* p;double a = 0, b = 0, r = 0;cout << "請分別輸入矩形的長和寬:" << endl;cin >> a >> b;Rectangle A(a, b);p = &A;p->display();cout << "" << endl;cout << "請輸入圓的半徑:" << endl;cin >> r;Circle B(r);p = &B;p->display();system("pause");return 0; }

測試功能:

代碼測試成功!

?

以上就是本次C++的全部內容,感謝您的閱讀和支持,篇幅較長,若有表述或者代碼中的不當之處,望指出!您的指出和建議能給作者帶來很大的動力!!!

總結

以上是生活随笔為你收集整理的C++编程练习:多态实验——设计一个基类Shapes,Shapes类公有派生产生矩形类Rectangle和圆类Circle的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。