静态成员与类模板.pptVIP

  • 0
  • 0
  • 约 13页
  • 2020-12-08 发布于四川
  • 举报
类的静态成员 问题的引入 在某些情况下,某些特殊类类型的所有对象可能需要访问同一个变量。例如:要计数在程序的任意一点总共创建了多少个此类类型的对象。 能否采用定义全局变量的方式来实现? 静态成员的使用 可定义静态成员变量,实现同一类的所有对象共享一个变量。 在类体中的数据成员声明前面加上关键字static,就使该数据成员成为静态的成员。 static int Student_Num; 静态数据成员被当作该类类型的全局变量。对于非静态数据成员每个类对象都有自己的拷贝,而静态数据成员只有一份由该类类型的所有对象共享访问的空间。 静态成员的使用 由于类的静态成员变量并不占类对象本身的存储空间,而是独立存在的。因此在对象定义的时候,也不会为静态成员变量分配内存空间。故静态成员要单独在类外初始化。 int CStu::Student_Num; 初始化可以给静态成员赋值,如果不赋值默认为0; 静态成员的优点 可以实现信息隐藏,静态成员可以是private 成员,而全局变量不能。 静态数据成员没有进入程序的全局名字空间,因此不存在与程序中其他全局名字冲突的可能性。 静态成员函数 同样,成员函数也可以被定义为静态的。只要在声明前加上关键字static。 其主要的作用就是为了处理静态成

文档评论(0)

1亿VIP精品文档

相关文档