2023.4.27
1 //实验六任务2 2 //定义猫科动物Animal类,由其派生出猫类(Cat)和豹类(Leopard), 3 //在Animal类中定义虚函数,输出“My name is Animal”,在派生类中 4 //分别重新定义该函数,显示“My name is **”,其中**为各自类名 5 #include <iostream> 6 #include <string> 7 using namespace std; 8 class Animal 9 { 10 public: 11 virtual void name() 12 { 13 cout<<"My name is Animal"<<endl; 14 } 15 }; 16 class Cat:public Animal 17 { 18 public: 19 void name() 20 { 21 cout<<"My name is Cat"<<endl; 22 } 23 }; 24 class Leopard:public Animal 25 { 26 public: 27 void name() 28 { 29 cout<<"My name is Leopard"<<endl; 30 } 31 }; 32 void test() 33 { 34 Cat c; 35 Leopard l; 36 c.name(); 37 l.name(); 38 } 39 int main() 40 { 41 test(); 42 return 0; 43 }
1 //实验六任务4 2 #include <iostream> 3 #include <string> 4 using namespace std; 5 class Shape 6 { 7 virtual void setvalues() = 0; 8 virtual void floatarea() = 0; 9 }; 10 class rectangle:public Shape 11 { 12 public: 13 void setvalues() 14 { 15 cout<<"请输入矩形的底和高:"<<endl; 16 cin>>x>>y; 17 } 18 void floatarea() 19 { 20 cout<<"矩形的面积为:"<<x*y<<endl; 21 } 22 float x; 23 float y; 24 }; 25 class arctangle:public Shape 26 { 27 public: 28 void setvalues() 29 { 30 cout<<"请输入三角形的底和高:"<<endl; 31 cin>>x>>y; 32 } 33 void floatarea() 34 { 35 cout<<"三角形的面积为:"<<x*y/2<<endl; 36 } 37 float x; 38 float y; 39 }; 40 class square:public Shape 41 { 42 public: 43 void setvalues() 44 { 45 cout<<"请输入正方形的边长:"<<endl; 46 cin>>x; 47 } 48 void floatarea() 49 { 50 cout<<"正方形的面积为:"<<x*x<<endl; 51 } 52 float x; 53 }; 54 class circle:public Shape 55 { 56 public: 57 void setvalues() 58 { 59 cout<<"请输入圆形的半径:"<<endl; 60 cin>>r; 61 } 62 void floatarea() 63 { 64 cout<<"圆形的面积为:"<<3.1415*r*r<<endl; 65 } 66 float r; 67 }; 68 void test() 69 { 70 rectangle r; 71 arctangle a; 72 square s; 73 circle c; 74 r.setvalues(); 75 a.setvalues(); 76 s.setvalues(); 77 c.setvalues(); 78 if(r.x<=0||r.y<=0||a.x<=0||a.y<=0||s.x<=0||c.r<=0) 79 { 80 cout<<"Set Value Error!"<<endl; 81 exit(0); 82 } 83 r.floatarea(); 84 a.floatarea(); 85 s.floatarea(); 86 c.floatarea(); 87 } 88 int main() 89 { 90 test(); 91 return 0; 92 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?