第5周课后实践阅读程序

/** Copyright (c) 2015, 烟台大学计算机学院* All rights reserved.* 文件名称:test.cpp* 作 者:刘畅* 完成日期:2015年 4 月 4 日* 版 本 号:v1.0* * 问题描述: 阅读程序写出程序的运行结果并理解。 * 输入描述:NULL; * 程序输出:按要求输出。

(1)代码及运行结果:

#include <iostream>using namespace std;class base{private:int m;public:base() {};base(int m){this->m=m;}int get(){return m;}void set(int m){this->m=m;}};//base_endint main(){base *ptr;ptr=new base[2];ptr->set(30);ptr=ptr+1;ptr->set(50);base a[2]={1,9};cout<<a[0].get()<<","<<a[1].get()<<endl;cout<<ptr->get()<<",";ptr=ptr-1;cout<<ptr->get()<<endl;delete[] ptr;return 0;}

(2)代码及运行结果:

#include <iostream>using namespace std;class CE{private:int a,b;int getmin(){return (a<b? a:b);}public:int c;void SetValue(int x1,int x2,int x3){a=x1;b=x2;c=x3;}int GetMin();};int CE::GetMin(){int d=getmin();return (d<c?d:c);}int main(){int x=5,y=12,z=8;CE *ep;ep=new CE;ep->SetValue(x+y,y-z,10);cout<<ep->GetMin()<<endl;CE a=*ep;cout<<a.GetMin()*3+15<<endl;return 0;}

(3)代码及运行结果如下:

#include <iostream>using namespace std;class Time{public:Time (int ,int ,int );void output_time();int hour;int minute;int sec;};Time::Time(int h,int m,int s){hour=h;minute=m;sec=s;}void Time::output_time( ){cout<<hour<<":";cout<<minute<<":"<<sec<<endl;}int main(){Time t1(10,13,56);int *p1=&t1.hour; //指向数据成员的指针cout<<*p1<<endl;t1.output_time( );Time *p2=&t1;//指向对象的指针p2->output_time( );void (Time::*p3) ( );p3=&Time::output_time; //指向成员函数的指针(t1.*p3)( );return 0;}

(4)代码及运行结果如下:

#include <iostream>#include <cstring>using namespace std;class Student{public:Student(){}Student(const string& nm,int sc=0):name(nm),score(sc){}//(1)下面的const干神马?<u>常数据成员</u>void set_student(const string& nm,int sc=0){name=nm;score=sc;}//(2)下面的const分别干神马?<u>声明一个常成员函数</u>const string& get_name() const{return name;}int get_score() const{return score;}private:string name;int score;};//下面的const干神马?<u>Student类对象的常引用</u>void output_student(const Student& student){cout<<student.get_name()<<"\t";cout<<student.get_score()<<endl;}int main(){Student stu("Wang",85);output_student(stu);return 0;}

(5)代码及运行结果如下:

#include <iostream>using namespace std;class myClass{public:myClass(){number++;}~myClass(){number–;}static int number;};int myClass::number=0;int main(){myClass *ptr;myClass A,B;myClass *ptr_Arr=new myClass[3];ptr=ptr_Arr;myClass C;cout<<myClass::number<<endl;delete []ptr;return 0;}

(6)代码及运行结果如下:

#include <iostream>using namespace std;class Test{private:static int val;int a;public:static int func();static void sfunc(Test &r);};int Test::val=20;int Test::func(){val+=val;return val;}void Test::sfunc (Test &r){r.a=25;cout<<"Result3="<<r.a<<endl;}int main(){cout<<"Result1="<<Test::func()<<endl;Test a;cout<<"Result2="<<a.func()<<endl;Test::sfunc(a);return 0;}

知识点总结:

this,const,static有关类和对象的基本应用。

,人生好如足球赛,看自家总是无奈,对人家总是优待,

第5周课后实践阅读程序

相关文章:

你感兴趣的文章:

标签云: