9、静态成员2.cpp 1022 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. //⚪静态成员函数
  2. //->所有对象共享同一个函数
  3. //->静态成员函数只能访问静态成员变量
  4. #include <iostream>
  5. class Person
  6. {
  7. public:
  8. //静态成员函数
  9. static void func()
  10. {
  11. m_A = 100; //静态成员函数可以访问 静态成员变量
  12. //m_B = 200; //静态成员函数 不可以访问非静态成员变量
  13. std::cout << "static void func 函数的调用" << std::endl;
  14. }
  15. static int m_A; //静态成员变量
  16. int m_B;
  17. //静态成员函数也是有访问权限的
  18. private :
  19. static void func2()
  20. {
  21. std::cout << "static void func2的调用" << std::endl;
  22. }
  23. };
  24. int Person::m_A = 0;
  25. //有两种访问方式
  26. void test01()
  27. {
  28. //1、通过对象进行访问
  29. Person p;
  30. p.func();
  31. //2、通过类名进行访问
  32. Person::func();
  33. //Person::func2(); 类外访问不到私有静态成员函数
  34. }
  35. int main()
  36. {
  37. test01();
  38. system("pause");
  39. return 0;
  40. }