C上机实验答案类的定义与应用.pdf_第1页
C上机实验答案类的定义与应用.pdf_第2页
C上机实验答案类的定义与应用.pdf_第3页
C上机实验答案类的定义与应用.pdf_第4页
C上机实验答案类的定义与应用.pdf_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验实验 2类的定义与应用类的定义与应用 1、实验目的和要求: 掌握类定义的方法, 理解类类型, 实例的含义, 体会面向对象程序设计中数据隐藏的概念。 理解构造函数和析构函数的作用和运行时间, 掌握拷贝构造函数的作用。 并熟练掌握复杂对 象类型的运用。 2、实验内容: (1)定义一个时间类 Time,它能提供由时、分、秒组成的时间。要求能够修改时间和打 印出时间。 #include using namespace std; class Time public: void displayTime(); void setTime(); private: int hour; int minute; int second; ; void Time:displayTime() couthourminutesecond; (2)编写一个计数器类,定义一个私有数据成员,通过两个成员函数,分别使其完成加 1 和减 1 操作。用构造函数数据成员初始化为 0,输出函数可以输出数据成员的值。 #include using namespace std; class counter public: void functionP(); void functionM(); void setNum(); void print(); private: int cNum; ; void counter:functionP() cNum +; void counter:functionM() cNum -; void counter:setNum() cNum = 0; void counter:print() cout using namespace std; class Time public: void displayTime(); Time(); Time(int Hour,int Minute,int Second); Time(); void setHour(int h); void setMinute(int m); void setSecond(int s); void setTime(int hou,int min,int sec); void tick(); private: int hour,minute,second; ; Time:Time(int Hour,int Minute,int Second) hour = Hour; minute = Minute; second = Second; Time:Time() cout using namespace std; class Rational public: Rational(int nn,int mm);/构造函数 void R_add(Rational /加 void R_sub(Rational /减 void R_mul(Rational /乘 void R_div(Rational /除 void print();/以简分数形式显示,注意约分 private: void simple( );/约分 int m;/分母 int n;/分子 ; Rational:Rational(int nn,int mm) n = nn; m = mm; void Rational:R_add(Rational m =A.m*m; simple(); void Rational:R_sub(Rational m =A.m*m; simple(); void Rational:R_mul(Rational m *= A.m; simple(); void Rational:R_div(Rational m *= A.n; simple(); void Rational:simple() int num = 1; for(int i = 1;i=num) num = i; n = n/num; m = m/num; void Rational:print() cout using namespace std; class Pointer public: Pointer(); Pointer(); private: int *ptr; ; Pointer:Pointer() ptr =new int 10; for(int i = 0;iptri; Pointer:Pointer() delete ptr; (6) 完成 String 类 class String public: String(const char *str = NULL);/普通构造函数 String(const String /拷贝构造函数 String();/析构函数 private: char *m_data; / 用于保存字符串 ; 完成 String 的 3 个成员函数,并编写一个主函数,在主函数中对所编写的成员函数进 行测试。 /* 完成 String 的 3 个成员函数,并编写一个主函数,在主函数中对所编写的成员函数 进行测试。 */ #include using namespace std; class String public: String(const char *str = NULL);/普通构造函数 String(const String /拷贝构造函数 void display(); String();/析构函数 private: char *m_data; / 用于保存字符串 ; String:String(const char *str) if(str = NULL) m_data = new char 1; m_data = 0; else int length = strlen(str); m_data = new char length +1; strcpy(m_data,str); String:String(const String m_data = 0; else int length = strlen(other.m_data); m_data = new char length +1; strcpy(m_data,other.m_data); String:String() delete m_data; void String:display() cout using namespace std; class Array public: Array(); /所有数组元素初始化为 0 int /返回下标为 i 的数组元素的引用 void print(); /打印出所有数组元素的值 void input(); /对所有数组元素进行输入 private: int m_data10; ; Array:Array() for(int num=0;numm_datanum; void Array:print() for(int num=0;num using namespace std; class Point public: Point (int a, int b) x=a;y=b; void fun (Point void fun (Point * p); private: int x,y; ; void Point:fun (Point y=p.y ; coutx ; y=p-y ; cout “Fun (Point *p) “endl ; void main() Point p(1,2),q(3,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论