静态成员函数在类中的特点
静态成员函数在类中的特点: 1、所有的对象共享一个函数 2、静态成员函数只能访问静态成员变量 但是在这里需要注意的是,静态成员函数具有访问权限,具体可以看一下代码进行理解
#include<iostream> using namespace std; // 静态成员函数 // 所有对象共享同一个函数 // 静态成员函数只能访问静态成员变量 class Person { public: // 构造一个静态成员函数 static void func() { m_A=100; // 静态成员函数可以访问静态成员变量 // m_B=200; // 静态成员函数不可以访问非静态成员变量 这里的m_B是必须创建对象之后才会有,假设创建多个对象之后,无法区分是哪一个对象的m_B的属性 cout<<"static void func函数的调用"<<endl; } // 静态成员变量 有一个特点需要在类内声明,然后在类外进行初始化 static int m_A; int m_B; // 静态成员函数也是具有访问权限 private: static void func1() { cout<<"static void func1函数调用"<<endl; } }; int Person::m_A=10; void test01() { // 若要调用类中的函数有两种访问方式 // 1、通过对象访问 Person p1; p1.func(); // 2、通过类名访问,因为没有创建对象就能进行访问,不属于某一个对象,都在共享同一个 Person::func(); // Person::func1(); 这里是私有的静态成员函数,所以类外不可以进行访问 } int main(){ test01(); return 0; }
下一篇:
SpringBoot配置多例实例