欢迎来到天天文库
浏览记录
ID:59209131
大小:74.50 KB
页数:31页
时间:2020-09-26
《第5章类和对象二ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章类和对象(二)6.1静态成员6.1.1静态数据成员在一个类中,若将一个数据成员说明为static,这种成员称为静态数据成员。与一般的数据成员不同,无论建立多少个类的对象,都只有一个静态数据的拷贝。从而实现了同一个类的不同对象之间的数据共享。定义静态数据成员的格式如下:static数据类型数据成员名;例6.1静态数据成员的使用引例。#include#includeclassStudent{public:Student(char*name1,char*stu_no1,floatscore1);~Student();voidshow();/
2、/输出姓名、学号和成绩voidshow_count_sum_ave();//输出学生人数、总成绩和平均成绩private:char*name;//学生姓名char*stu_no;//学生学号floatscore;//学生成绩staticintcount;//静态数据成员,统计学生人数staticfloatsum;//静态数据成员,统计总成绩staticfloatave;//静态数据成员,统计平均成绩};Student::Student(char*name1,char*stu_no1,floatscore1){name=newchar[strlen(name1)+1];strcpy(n
3、ame,name1);stu_no=newchar[strlen(stu_no1)+1];strcpy(stu_no,stu_no1);score=score1;++count;//累加学生人数sum=sum+score;//累加总成绩ave=sum/count;//计算平均成绩}Student::~Student(){delete[]name;delete[]stu_no;--count;sum=sum-score;}voidStudent::show(){cout<<"name:"<4、"<5、);stu1.show();stu1.show_count_sum_ave();Studentstu2("Zhanghao","990202",85);stu2.show();stu2.show_count_sum_ave();}6.1.2静态成员函数定义静态成员函数的格式如下:static返回类型静态成员函数名(参数表);与静态数据成员类似,调用公有静态成员函数的一般格式有如下几种:类名::静态成员函数名(实参表)对象.静态成员函数名(实参表)对象指针->静态成员函数名(实参表)例6.2静态成员函数来访问静态数据成员。#include#include6、ing.h>classStudent{private:char*name;//学生姓名char*stu_no;//学生学号floatscore;//学生成绩staticintcount;//静态数据成员,统计学生人数staticfloatsum;//静态数据成员,统计总成绩public:Student(char*name1,char*stu_no1,floatscore1);~Student();voidshow();//普通成员函数,输出姓名、学号和成绩staticvoidshow_count_sum();//静态成员函数,输出学生人数和总成绩};Student::Student(7、char*name1,char*stu_no1,floatscore1){name=newchar[strlen(name1)+1];strcpy(name,name1);stu_no=newchar[strlen(stu_no1)+1];strcpy(stu_no,stu_no1);score=score1;++count;//累加学生人数sum=sum+score;//累加总成绩}Student::~Student(){delete[]name;del
4、"<5、);stu1.show();stu1.show_count_sum_ave();Studentstu2("Zhanghao","990202",85);stu2.show();stu2.show_count_sum_ave();}6.1.2静态成员函数定义静态成员函数的格式如下:static返回类型静态成员函数名(参数表);与静态数据成员类似,调用公有静态成员函数的一般格式有如下几种:类名::静态成员函数名(实参表)对象.静态成员函数名(实参表)对象指针->静态成员函数名(实参表)例6.2静态成员函数来访问静态数据成员。#include#include6、ing.h>classStudent{private:char*name;//学生姓名char*stu_no;//学生学号floatscore;//学生成绩staticintcount;//静态数据成员,统计学生人数staticfloatsum;//静态数据成员,统计总成绩public:Student(char*name1,char*stu_no1,floatscore1);~Student();voidshow();//普通成员函数,输出姓名、学号和成绩staticvoidshow_count_sum();//静态成员函数,输出学生人数和总成绩};Student::Student(7、char*name1,char*stu_no1,floatscore1){name=newchar[strlen(name1)+1];strcpy(name,name1);stu_no=newchar[strlen(stu_no1)+1];strcpy(stu_no,stu_no1);score=score1;++count;//累加学生人数sum=sum+score;//累加总成绩}Student::~Student(){delete[]name;del
5、);stu1.show();stu1.show_count_sum_ave();Studentstu2("Zhanghao","990202",85);stu2.show();stu2.show_count_sum_ave();}6.1.2静态成员函数定义静态成员函数的格式如下:static返回类型静态成员函数名(参数表);与静态数据成员类似,调用公有静态成员函数的一般格式有如下几种:类名::静态成员函数名(实参表)对象.静态成员函数名(实参表)对象指针->静态成员函数名(实参表)例6.2静态成员函数来访问静态数据成员。#include#include6、ing.h>classStudent{private:char*name;//学生姓名char*stu_no;//学生学号floatscore;//学生成绩staticintcount;//静态数据成员,统计学生人数staticfloatsum;//静态数据成员,统计总成绩public:Student(char*name1,char*stu_no1,floatscore1);~Student();voidshow();//普通成员函数,输出姓名、学号和成绩staticvoidshow_count_sum();//静态成员函数,输出学生人数和总成绩};Student::Student(7、char*name1,char*stu_no1,floatscore1){name=newchar[strlen(name1)+1];strcpy(name,name1);stu_no=newchar[strlen(stu_no1)+1];strcpy(stu_no,stu_no1);score=score1;++count;//累加学生人数sum=sum+score;//累加总成绩}Student::~Student(){delete[]name;del
6、ing.h>classStudent{private:char*name;//学生姓名char*stu_no;//学生学号floatscore;//学生成绩staticintcount;//静态数据成员,统计学生人数staticfloatsum;//静态数据成员,统计总成绩public:Student(char*name1,char*stu_no1,floatscore1);~Student();voidshow();//普通成员函数,输出姓名、学号和成绩staticvoidshow_count_sum();//静态成员函数,输出学生人数和总成绩};Student::Student(
7、char*name1,char*stu_no1,floatscore1){name=newchar[strlen(name1)+1];strcpy(name,name1);stu_no=newchar[strlen(stu_no1)+1];strcpy(stu_no,stu_no1);score=score1;++count;//累加学生人数sum=sum+score;//累加总成绩}Student::~Student(){delete[]name;del
此文档下载收益归作者所有