C++之我是二代我继承——点线
来源:互联网 发布:js arguments foreach 编辑:程序博客网 时间:2024/05/16 19:31
#include<iostream>#include<Cmath>using namespace std;class Point //定义坐标点类{public: Point():x(0),y(0) {}; Point(double x0, double y0):x(x0), y(y0) {}; double get_x(); double get_y();//靠这两个函数读取protected中的x、y的值 void PrintPoint(); //输出点的信息protected: double x,y; //点的横坐标和纵坐标};void Point::PrintPoint(){ cout<<"Point: ("<<x<<","<<y<<")"; //输出点}class Line: public Point //利用坐标点类定义直线类, 其基类的数据成员表示直线的中点{public: Line(Point p1, Point p2); //构造函数,用初始化直线的两个端点及由基类数据成员描述的中点 double Length(); //计算并返回直线的长度 void PrintLine(); //输出直线的两个端点和直线长度private: class Point pts,pte; //直线的两个端点,从Point类继承的数据成员表示直线的中点};double Point::get_x(){ return x;}double Point::get_y(){ return y;}Line::Line(Point p1, Point p2):Point((p1.get_x()+p2.get_x())/2,(p1.get_y()+p2.get_y())/2){ pts=p1; pte=p2;}double Line::Length(){ return sqrt((pts.get_x()-pte.get_x())*(pts.get_x()-pte.get_x())+(pts.get_y()-pte.get_y())*(pts.get_y()-pte.get_y()));}void Line::PrintLine(){ cout<<" 1st "; pts.PrintPoint(); cout<<endl<<" 2nd "; pte.PrintPoint(); cout<<endl<<" The Length of Line: "<<Length()<<endl;}int main(){ Point ps(-2,5),pe(7,9); Line l(ps,pe); cout<<"About the Line: "<<endl; l.PrintLine(); //输出直线l的信息:两端点及长度 cout<<"The middle point of Line is: "; l.PrintPoint(); //输出直线l中点的信息 return 0;}
0 0
- C++之我是二代我继承——点线
- C++之我是二代我继承——classFamily
- C++之我是二代我继承——教师干部
- C++之我是二代我继承——日期时间
- C++之我是二代我继承——班长和学生
- C++之我是二代我继承——摩托车=自行车+机动车
- C++之我是二代我继承——圆与线
- C++之我是二代我继承——员工和工资出现了好几次了……
- 我是首领美代,我爱首领二代!
- 三维空间——点线面关系
- 【C++】继承和多态之——菱形继承
- 假如我是一个部门经理——我手写我心
- c#点线面(非继承)
- 我爱cs之我是一个兵
- C++——继承
- C#——继承
- poj2528(动态开点线段树——过不了)
- 我是程序员——开篇之作
- C++之我是二代我继承——classFamily
- 【编程之美】给定一个整数N,求N!末尾有多少个0
- Asp.Net北大青鸟总结(一)
- C++中的句柄 -学习笔记(从其他地方参考的)
- 【iFD转载】Xcode添加字体库
- C++之我是二代我继承——点线
- java中public,private,protect,default区别
- 浮点数输出格式问题
- Populating Next Right Pointers in Each Node II
- ODBC实现动态建库和切库
- 学习中遇到与解决php和html的问题
- Android环境搭建之Android Studio
- 微创网站工作总结:用错地方的资源
- envi 读取.ROI 文件,然后转化为.txt 坐标文件