static int volume( );
Box::volume( );
a.volume( );
cout<<height<<endl; //若height已声明为static,则引用本类中的静态成员,合法 cout<<width<<endl; //若width是非静态数据成员,不合法
cout<<a.width<<endl; //引用本类对象a中的非静态成员
#include <iostream>
using namespace std;
class Student //定义Student类
{
public:
Student(int n,int a,float s):num(n),age(a),score(s){ } //定义构造函数
void total( );
static float average( ); //声明静态成员函数
private:
int num;
int age;
float score;
static float sum; //静态数据成员
static int count; //静态数据成员
};
void Student::total( ) //定义非静态成员函数
{
sum+=score; //累加总分
count++; //累计已统计的人数
}
float Student::average( ) //定义静态成员函数
{
return(sum/count);
}
float Student::sum=0; //对静态数据成员初始化
int Student::count=0; //对静态数据成员初始化
int main( )
{
Student stud[3]={ //定义对象数组并初始化
Student(1001,18,70),
Student(1002,19,78),
Student(1005,20,98)
};
int n;
cout<<"please input the number of students:";
cin>>n; //输入需要求前面多少名学生的平均成绩
for(int i=0;i<n;i++) //调用3次total函数
stud[i].total( );
cout<<"the average score of "<<n<<" students is "<<Student::average( )<<endl;
//调用静态成员函数
return 0;
}
please input the number of students:3↙ the average score of 3 students is 82.3333
class Student{
private:
char *name;
int age;
float score;
static int num; //将num定义为静态成员变量
public:
Student(char *, int, float);
void say();
};
int Student::num; //初始化
int Student::num = 10; //初始化同时赋值
类名::成员变量;
//通过类来访问 Student::num = 10; //通过对象来访问 Student stu; stu.num = 10;
#include <iostream>
using namespace std;
class Student{
private:
char *name;
int age;
float score;
static int num; //将num定义为静态成员变量
public:
Student(char *, int, float);
void say();
};
int Student::num = 0; //初始化静态成员变量
Student::Student(char *name, int age, float score){
this->name = name;
this->age = age;
this->score = score;
num++;
}
void Student::say(){
//在普通成员函数中可以访问静态成员变量
cout<<name<<"的年龄是 "<<age<<",成绩是 "<<score<<"(当前共"<<num<<"名学生)"<<endl;
}
int main(){
//使用匿名对象
(new Student("小明", 15, 90))->say();
(new Student("李磊", 16, 80))->say();
(new Student("张华", 16, 99))->say();
(new Student("王康", 14, 60))->say();
return 0;
}
小明的年龄是 15,成绩是 90(当前共1名学生) 李磊的年龄是 16,成绩是 80(当前共2名学生) 张华的年龄是 16,成绩是 99(当前共3名学生) 王康的年龄是 14,成绩是 60(当前共4名学生)
int Student::num = 10;
Student::getNum();
stu.getNum();
#include <iostream>
using namespace std;
class Student{
private:
char *name;
int age;
float score;
static int num; //学生人数
static float total; //总分
public:
Student(char *, int, float);
void say();
static float getAverage(); //静态成员函数,用来获得平均成绩
};
int Student::num = 0;
float Student::total = 0;
Student::Student(char *name, int age, float score){
this->name = name;
this->age = age;
this->score = score;
num++;
total += score;
}
void Student::say(){
cout<<name<<"的年龄是 "<<age<<",成绩是 "<<score<<"(当前共"<<num<<"名学生)"<<endl;
}
float Student::getAverage(){
return total / num;
}
int main(){
(new Student("小明", 15, 90))->say();
(new Student("李磊", 16, 80))->say();
(new Student("张华", 16, 99))->say();
(new Student("王康", 14, 60))->say();
cout<<"平均成绩为 "<<Student::getAverage()<<endl;
return 0;
}
小明的年龄是 15,成绩是 90(当前共1名学生) 李磊的年龄是 16,成绩是 80(当前共2名学生) 张华的年龄是 16,成绩是 99(当前共3名学生) 王康的年龄是 14,成绩是 60(当前共4名学生) 平均成绩为 82.25
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有