202130310075

标题1:上机目的:

1:了解类和对象的概念,掌握声明类和定义对象的方法。

2:掌握构造函数和析构函数的实现方法。

3:初步掌握使用类和对象编制C++程序。


标题2:上机要求:

创建一个类,完成以下功能

1:连续输入一组二维坐标。

2:二维坐标值的数目可以由用户自定义。(默认为2个)

3:显示用户输入的坐标。

4:显示用户输入坐标值的均值。


具体实现: 关于 类的 定义和声明

class Coordinate {public:Coordinate(){times = 2;cout << "Coordinate construction1 called!" << endl;}Coordinate(int times1) //用户自定义输入坐标的数目{times = times1;cout << "Coordinate construction2 called!" << endl;}~Coordinate(){cout << "Coordinate construction called!" << endl;}void InputCoord() //用户连续输入坐标值{for (int i = 0; i < times; i++){cout << "Please Input x:" << endl;cin >> Coord[i][1];cout << "Please Input y:" << endl;cin >> Coord[i][2];}}void ShowCoord() //用户显示坐标值{cout << "The coord is:" << endl;for (int i = 0; i < times; i++){cout << "(" << Coord[i][1] << "," << Coord[i][2] << ")" << endl;}}void ShowAvgCoord()  //显示坐标的平均值{float avgx = 0;float avgy = 0;for (int i = 0; i < times; i++){avgx = avgx + Coord[i][1];avgy = avgy + Coord[i][2];}avgx = avgx / times;avgy = avgy / times;cout << "The AVG coord is:" << endl;cout << "(" << avgx << "," << avgy << ")" << endl;}
private:float Coord[100][100]; // 存放坐标的二维数组int times; // 坐标值数目
};

实验内容:

1:观察代码中构造函数和析构函数运行顺序。。

2:在main函数内加入 Coordinate y(5);  y.InputCoord();  y.ShowCoord(); y.ShowAvgCoord();观察运行结果。


任务一:代码实现

Coordinate() //构造函数{cout << "Coordinate construction1 called!" << endl;}
~Coordinate() //析构函数{cout << "Coordinate construction called!" << endl;}

操作:在main函数中创建一个一个类对象,运行代码后观察字符输出情况。

结论:构造函数在类对象创建时运行,在main函数介绍后完成 析构函数。


任务二:代码实现

int main()
{Coordinate y(5);//创建一个名为y的类对象,含有5的坐标值。y.InputCoord(); 用户输入坐标值y.ShowCoord();  显示用户输入的坐标值y.ShowAvgCoord(); 显示用户输入坐标值的平均值system("pause");return 0;
}

运行结果:


最后高级要求:

类似课堂所展示的代码:使用对象数组、赋值式定义、先定义后赋值、多重花括号赋值等,并简单总结/归纳这些方法中的构造和析构函数调用时刻和特点。

Coordinate(int times1) :times(times1 )    //冒号初始化{cout << "Coordinate construction2 called!" << endl;}
Coordinate arr[5]; //类对象数组

注意:构造函数后面的冒号就是初始化,而括号里面的等于号并不是初始化,而是变量生成以后的赋值而已。const和引用不可以被赋值,只能被初始化。

总结:

①构造函数和析构函数是在类体中说明的两种特殊的成员函数。
②构造函数的功能是在创建对象时,使用给定的值来将对象初始化。
③析构函数的功能是用来释放一个对象的。在对象删除前,用它来做一些清理工作,它与构造函数的功能正好相反。

上机3—1具体实验要求已经实现,感谢。

上机 3.1 Coordinate 坐标相关推荐

  1. 3.1 Coordinate 坐标 上机实验

    #include<iostream> using namespace std; class Coordinate { //定义一个Coordinate类 public: Coordinat ...

  2. Coordinate坐标

    实验目的: 1.理解类和对象的概念,掌握声明类和定义 对象的方法 2.掌握构造函数和析构西数的实现方法 3.逐步掌握使用类和对象编制C++程序 实验内容: 连续输入一组二维坐标值:二维坐标值的数目可以 ...

  3. Screen coordinate and Client Coordinat

    Screen coordinate 坐标是原点在屏幕左上角 Client coordinate 坐标原点在应用软件窗口的左上角 int with= GetSystemMetrics(SM_CXFULL ...

  4. CV领域论文常用单词汇总

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 作者:王大东 来源:https://zhuanlan.zhihu.com/p/58 ...

  5. iPhone开发的一些小技巧

    [转载]iPhone开发的一些小技巧 (2011-10-29 20:13:02) 转载原文 标签: 转载 原文地址:iPhone开发的一些小技巧作者:哈哈 一,修改状态栏: 1.加入[[UIAppli ...

  6. cad 快捷键命令大全

    目录 符号键(CTRL开头) 控制键 组合键 功能键 换挡键 首字母 前两个字母 两个字母(间隔) 三个字母(间隔) JOG 无规律的个别 符号键(CTRL开头) CTRL+1 PROPCLOSEOR ...

  7. cad指示箭头快捷键命令_CAD快捷键命令大全

    今天和大家分享一下CAD运用中的一些快捷方式,家居设计中会运用到很多CAD快捷键,熟练掌握快捷键在实际操作中会更加得心应手,提高工作效力. 符号键(CTRL开头) CTRL+1 PROPCLOSEOR ...

  8. C++ 实例化对象 p-printX()

    一.从栈实例化对象 我们首先定义一个类,类的名字叫TV,里面包括两个成员变量,两个成员函数. class TV // 定义一个电视的类TV { public:char name[20]; // 定义类 ...

  9. 定位 - CoreLocation - 打印位置信息

    1. 导入框架 <CoreLocation.framework>, 引入头文件 import <CoreLocation/CoreLocation.h>; 2. 创建管理者对象 ...

最新文章

  1. 清华大学AMiner团队发布《超级计算机研究报告》(附下载)
  2. 【转载】究竟啥才是互联网架构“高可用”
  3. [设计模式]简单工厂模式
  4. [导入]php 安全基础 附录C. 加密
  5. 【收藏】Spark之RDD的mapPartitions算子
  6. php配置xdebug调试
  7. SAP FSM 学习笔记(一) : 使用API消费FSM的数据
  8. 男女共厕,考验男生心理素质的时候到了......
  9. java分布式系统开发_从微服务到分布式系统-Java开发人员生存指南
  10. 《白日梦想家》观后感
  11. Mac上好用的MP4高清视频格式转化软件
  12. 中兴e8820刷openwrt_中兴E8820V2(电信天翼宽带类似新路由3歌华链)-拆机及OpenWrt固件...
  13. 2022张宇考研基础30讲 第六讲 中值定理
  14. 狭义相对论推导过程中的数学悖论--有没有人能解释下?
  15. HTML空格符号 nbsp; ensp; emsp; 介绍以及实现中文对齐的方法
  16. OSWorkflow(转载)
  17. Android 65536错误:Cannot fit requested classes in a single dex file
  18. 【工具】Excel表格数据不能编辑
  19. Conda环境无法激活
  20. 【机器学习课程】 第一章机器学习概述 1.人工智能

热门文章

  1. Python3简单实现杨辉三角
  2. Web3创作者经济新机会
  3. 大数据建表及相关代码模板
  4. c语言程序设计胡成松,C语言程序设计教学课件 作者 胡成松 黄玉兰 李文红 课后习题解答 习题答案 4选择结构程序设计 .docx...
  5. ExtJS 蹒跚学步
  6. Jiecaovideoplayer开始播放闪屏问题处理
  7. 关于CCIR656/sRGB的一点基础了解
  8. 永恒之蓝(ms017-010)漏洞利用
  9. redis开启过期监听
  10. 企业直播:会畅通讯、好视通、飞书见仁见智