/************************************************************************ 同一个类多个对象之间共享数据可以用全局变量,但是会破坏类的封装性因此可以使用类的静态成员变量 ************************************************************************ //***VS2005 TEST***/ #include <stdio.h> #include <stdlib.h> class A { public: int val; static int nCount; A() { nCount++; } ~A() { nCount--; } }; int A::nCount = 0; int main() { A a; A b; printf("number of A: %d\n", A::nCount); // 2 printf("non-static variable: 0x%x\n", &a.val); // 0x12ff54 printf("non-static variable: 0x%x\n", &b.val); // 0x12ff48 printf("static class member: 0x%x\n", &a.nCount); // 0x418160 printf("static class member: 0x%x\n", &b.nCount); // 0x418160 system("pause"); return 0; }
[C++应用程序性能优化]类的静态成员变量实现同一个类多个对象之间共享数据
最新推荐文章于 2022-10-18 16:40:09 发布