2015.5.20类
来源:互联网 发布:动态桌面软件下载 编辑:程序博客网 时间:2024/05/22 18:07
#include<iostream>using namespace std;class Point{protected: double p_X; double p_Y;public: Point(){} Point(double x,double y):p_X(x),p_Y(y) {} void cin_XY(double x,double y); void show_Point(); double get_X() { return p_X; } double get_Y() { return p_Y; } friend ostream & operator<<(ostream&output, Point &a); friend istream & operator>>(istream&input, Point &a);};void Point::cin_XY(double x,double y){ p_X=x; p_Y=y;}void Point::show_Point(){ cout<<'('<<p_X<<','<<p_Y<<')'<<endl;}ostream & operator<<(ostream &,Point &a){ cout<<'('<<a.p_X<<','<<a.p_Y<<')'; return cout;}istream & operator>>(istream &,Point &a){ cout<<"请分别输入x,y坐标\n"; cin>>a.p_X>>a.p_Y; return cin;}class Circle:public Point{protected: double m_R;public: Circle(){} Circle(double x,double y,double r):Point(x,y),m_R(r) {} void cin_Circle(); void show_Circle(); double get_area(); double get_R() { return m_R; } friend ostream & operator<<(ostream &,Circle &a); friend istream & operator>>(istream & ,Circle &a);};void Circle::cin_Circle(){ cout<<"输入圆心坐标和,半径\n"; cin>>p_X>>p_Y>>m_R;}void Circle::show_Circle(){ cout<<"圆心坐标为"; show_Point(); cout<<"半径为"<<m_R<<endl;}double Circle::get_area(){ double a; a=m_R*m_R*3.14; return a;}ostream & operator<<(ostream &,Circle &a){ cout<<"圆心坐标为"<<'('<<a.p_X<<','<<a.p_Y<<')'<<"半径为"<<a.m_R; return cout;}istream & operator>>(istream &,Circle &a){ cout<<"输入圆心坐标和半径\n"; cin>>a.p_X>>a.p_Y>>a.m_R; return cin;}class Volume:public Circle{protected: double v_Height;public: Volume(){}; Volume(double a,double b,double c,double d):Circle(a,b,c),v_Height(d){} double get_Height(){return v_Height;}; double get_volume(); void show_Volume(); friend ostream &operator<<(ostream&,Volume &a);};double Volume::get_volume(){ double a; a=m_R*m_R*3.14*v_Height; return a;}void Volume::show_Volume(){ cout<<"圆柱体的底面圆心为"<<'('<<p_X<<','<<p_Y<<')'<<"底面半径为"<<m_R<<"高为"<<v_Height<<endl;}ostream &operator<<(ostream &,Volume &a){ cout<<"圆柱体的底面圆心为"<<'('<<a.p_X<<','<<a.p_Y<<')'<<"底面半径为"<<a.m_R<<"高为"<<a.v_Height; return cout;}int main(){ Point a(1,5),b; a.show_Point(); cin>>b; cout<<a<<b<<endl; Circle c,d(4,5,9); d.show_Circle(); cin>>c; cout<<c<<endl; Volume e(3,4,5,6); e.show_Volume(); cout<<"体积为"<<e.get_volume()<<endl; cout<<e; return 0;}
0 0
- 2015.5.20类
- 2015.5.20点类派生直线类
- 2015.5.20 毕业后感
- 2015.5.19方程也是类
- 2015.5.27日期时间类
- 2015.5.20职工有薪水了
- 陈怡暖:2015.5.20早间最强现货黄金白银操作建议
- 2015.5.9时间类的运算符的重载
- 2015.5.9复数类的运算符的重载
- 2015.5.13复数类的运算符重载(续)
- 2015.5.13time类中的运算符重载(续)
- 2015.5.19储存班长信息的学生类
- 2015.5.3
- 2015.5.6
- 2015.5.14
- 2015.5.30
- 2015.5.26
- 2015.5.31
- 排序工具类
- Jackson 工具类使用及配置指南
- springMVC传输date类型参数到后台
- wifi 相关资源
- solr查询优化(实践了一下效果比较明显)
- 2015.5.20类
- 临界区处理之关闭中断
- 解决boost::asio的WinSock.h has already been included
- 欢迎使用CSDN-markdown编辑器
- java反射机制
- ArrayList、string、string[]之间的转换
- hadoop 2 cachefile 分布式缓存 和 Configuration set get 的用法
- linux系统版本信息查看命令总结
- android httpClient 支持HTTPS的2种处理方式