参考内容:北京大学信息科学技术学院《程序设计实习》,郭伟老师&刘家瑛老师

目录

0)基本概念

1)与普通成员的区别

2)如何访问静态成员

3)静态成员示例

4)注意事项


0)基本概念

016 静态成员变量和静态成员函数
016 静态成员变量和静态成员函数

016 静态成员变量和静态成员函数

1)与普通成员的区别

016 静态成员变量和静态成员函数

2)如何访问静态成员

016 静态成员变量和静态成员函数

016 静态成员变量和静态成员函数

3)静态成员示例

1、考虑一个需要随时知道矩形总数和总面积的图形处理程序

2、可以用全局变量来记录总数和总面积

3、用静态成员将这两个变量封装进类中,就更容易理解和维护

016 静态成员变量和静态成员函数

016 静态成员变量和静态成员函数

016 静态成员变量和静态成员函数

4)注意事项

016 静态成员变量和静态成员函数

在使用CRectangle类时,有时会调用复制构造函数生成临时的隐藏的CRectangle对象
       调用一个以CRectangle类对象作为参数的函数时,
       调用一个以CRectangle类对象作为返回值的函数时

临时对象在消亡时会调用析构函数,减少nTotalNumber 和nTotalArea的值,可是这些临时对象在生成时却没有增加nTotalNumber 和 nTotalArea的值。

因此需要自定义复制构造函数,增加nTotalNumber 和 nTotalArea的值。

 

相关文章: