Description

在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定。现在我们封装一个“Point类”来实现平面上的点的操作。

根据“append.cc”,完成Point类的构造方法和show()方法,输出各Point对象的构造和析构次序。

接口描述:
Point::show()方法:按输出格式输出Point对象。

Input

输入多行,每行为一组坐标“x,y”,表示点的x坐标和y坐标,x和y的值都在double数据范围内。

Output

输出每个Point对象的构造和析构行为。对每个Point对象,调用show()方法输出其值:X坐标在前,Y坐标在后,Y坐标前面多输出一个空格。每个坐标的输出精度为最长16位。输出格式见sample。

C语言的输入输出被禁用。

Sample Input

1,2
3,3
2,1

Sample Output

Point : (0, 0) is created.
Point : (1, 2) is created.
Point : (1, 2) Point : (1, 2) is erased.
Point : (3, 3) is created.
Point : (3, 3)
Point : (3, 3) is erased.
Point : (2, 1) is created.
Point : (2, 1)
Point : (2, 1) is erased.
Point : (0, 0) is copied.
Point : (1, 1) is created.
Point : (0, 0) Point : (1, 1)
Point : (0, 0) Point : (1, 1) is erased.
Point : (0, 0) is erased.
Point : (0, 0) is erased.

HINT

思考构造函数、拷贝构造函数、析构函数的调用时机。

Append Code

#include<iostream>
#include<iomanip>
using namespace std;
class Point
{
private:
    double x,y;
public:
    Point(){x=0,y=0;cout<<setprecision(16)<<"Point : (0, 0) is created.\n";}
    Point(double a,double b){x=a,y=b;cout<<setprecision(16)<<"Point : ("<<x<<", "<<y<<") is created.\n";}
    void show(){cout<<setprecision(16)<<"Point : ("<<x<<", "<<y<<")\n";}
    ~Point(){cout<<setprecision(16)<<"Point : ("<<x<<", "<<y<<") is erased.\n";}
    Point(Point &a){x=0,y=0;cout<<setprecision(16)<<"Point : (0, 0) is copied.\n";}
    Point(int a){x=a,y=a;cout<<setprecision(16)<<"Point : ("<<x<<", "<<y<<") is created.\n";}
};
int main()
{
    char c;
    double a, b;
    Point q;
    while(std::cin>>a>>c>>b)
    {
        Point p(a, b);
        p.show();
    }
    Point q1(q), q2(1);
    q1.show();
    q2.show();
    q.show();
}

转载于:https://www.cnblogs.com/TogetherLaugh/p/6544632.html

Problem E: 平面上的点——Point类 (II)相关推荐

  1. Problem D: 平面上的点——Point类 (IV)

    Problem D: 平面上的点--Point类 (IV) Time Limit: 1 Sec   Memory Limit: 4 MB Submit: 5400   Solved: 3167 [ S ...

  2. Problem F: 平面上的点——Point类 (VI)

    Problem F: 平面上的点--Point类 (VI) Time Limit: 1 Sec   Memory Limit: 4 MB Submit: 6636   Solved: 3048 [ S ...

  3. Problem A: 平面上的点——Point类 (I)

    Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个"Point类"来实现平面上的点的操作. 根据"append.c ...

  4. 平面上的点——Point类 (II)

    Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个"Point类"来实现平面上的点的操作. 根据"append.c ...

  5. 平面上的点——Point类

    Problem A: 平面上的点--Point类 (I) Time Limit: 1 Sec  Memory Limit: 4 MB Submit: 11586  Solved: 5189 [Subm ...

  6. 平面上的点——Point类 (VI)

    Problem D: 平面上的点--Point类 (VI)Time Limit: 1 Sec Memory Limit: 4 MB Submit: 7868 Solved: 3620 [Submit] ...

  7. 平面上的点——Point类 (I)

    Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个"Point类"来实现平面上的点的操作. 根据"append.c ...

  8. Problem B: 立体空间中的点(II)

    Problem B: 立体空间中的点(II) Time Limit: 1 Sec   Memory Limit: 128 MB Submit: 1662   Solved: 1299 [ Submit ...

  9. java定义一个点_JAVA 定义一个Point类 它的对象是指一个平面上的点(x,y),在定义Point类中要定义它的三个构造函数...

    JAVA 定义一个Point类 它的对象是指一个平面上的点(x,y),在定义Point类中要定义它的三个构造函数 JAVA 定义一个Point类 它的对象是指一个平面上的点(x,y),在定义Point ...

最新文章

  1. 2018年12月14日 函数 总结
  2. BYTE,WORD,DWORD的大小及一些特殊的高低位宏(取高位 取低位)
  3. 完整的维纳滤波器Matlab源程序
  4. 解决IDEA本地仓库有jar包却无法引用和打包问题
  5. [最新下载] 【火车票订票外挂】Go-Home–12306.cn 网上火车票自动订票程序
  6. ArcGIS 10.6连接Access 2007(.accdb)及以上版本数据库
  7. mongoose 通过账号密码连接 Error: Password contains an illegal unescaped character
  8. html如何实现切换效果,纯CSS实现页签切换效果
  9. flex 还有人用么_那些北京人用过的老物件,能认出10个说明您老了!
  10. nginx服务器设置url的优雅链接
  11. JAVA多线程面试题整理及答案
  12. 朗文当代高级英语辞典android,朗文当代高级英语词典下载
  13. 机器学习 | 决策树ID3算法
  14. 2013.11.18周例会小结
  15. SCI收录期刊——航空航天学科
  16. bootstrap实现开关切换
  17. html输入QQ自动获取QQ头像,代码实现WordPress评论框输入QQ号码自动获取QQ头像和昵称...
  18. 代码写过300张可视化,为什么建议你用报表工具开发数据大屏?
  19. excel按分数分等级
  20. 前端面试查漏补缺--(二) 垃圾回收机制

热门文章

  1. [BZOJ 1588] [HNOI 2002] 营业额统计
  2. JS获取屏幕浏览器网页高度和宽度属性
  3. 新的开始 和一些总结
  4. 红旗桌面版本最新运用方式和题目问题解答100例-4
  5. matlab regionprops区域属性信息
  6. Python应用实战-用Highcharts实现可视化分析
  7. java实现回文验证_LeetCode 精选 TOP 面试题(Java 实现)—— 验证回文串
  8. mysql 两个查询结果合并去重_《MySQL 入门教程》第 21 篇 集合操作符
  9. java获取数组的最小值_Java 数组获取最大和最小值的实例实现
  10. JSP+Tomcat+SQL Server 2000+JDBC实现合同信息管理系统