ch15_1.cpp

来自「本文档是(作者:钱能)《C++程序设计教程》系列的部分辅助代码。 选题编辑:张」· C++ 代码 · 共 40 行

CPP
40
字号
//**********************
//**    ch15_1.cpp    **
//**********************

#include <iostream.h>
#include <string.h>

class Student{
public:
  Student(char* pName ="no name")
  {
    cout <<"create one student\n";
    strncpy(name, pName,40);
    name[39]='\0';
    noOfStudents++;            //静态成员:每创建一个对象,学生人数增1
    cout <<noOfStudents <<endl;
  }
  ~Student()
  {
    cout <<"destruct one student\n";
    noOfStudents--;            //每析构一个对象,学生人数减1
    cout <<noOfStudents <<endl;
  }
  static int number()          //静态成员函数
  {
    return noOfStudents;
  }
protected:
  static int noOfStudents;     //若写成noOfStudents=0;则非法
  char name[40];
};
int Student::noOfStudents =0;  //静态数据成员在类外分配空间和初始化

void fn()
{
  Student s1;
  Student s2;
  cout <<Student::number() <<endl;  //调用静态成员函数用类名引导
}
void main()
{
  fn();
  cout <<Student::number() <<endl;  //调用静态成员函数用类名引导
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?