c++笔记——静态成员函数
静态成员变量
- 所有对象共享一份数据
- 在编译阶段分配内存
- 类内声明,类外初始化
静态成员函数
- 所有对象共享同一个成员函数
- 静态成员函数只能访问静态成员变量
- 静态成员函数有访问权限的
例子:
#include<iostream> #include<string> using namespace std; //静态成员函数 //所有对象共享同一个函数 //静态成员函数只能访问静态成员变量 class person { public: static void func() { a = 100; cout << "静态成员函数的调用" << endl; } static int a; }; int person::a=0; void text01()//调用 { //1.通过对象进行访问 person p; p.func(); //2.通过类名进行访问 因为共享 所以不需要创建对象就能访问 person::func(); } int main() { text01(); }
#include<iostream> #include<string> using namespace std; //静态成员函数 //所有对象共享同一个函数 //静态成员函数只能访问静态成员变量 class person { public: static void func() { a = 100; cout << "静态成员函数的调用" << endl; } static int a; private: static void fun2() { cout << "static void fun2()的调用" << endl; } }; int person::a=0; void text01()//调用 { //1.通过对象进行访问 person p; p.func(); //2.通过类名进行访问 person::func(); person ::fun2();//类外不能访问静态成员函数 } int main() { text01(); }
浙公网安备 33010602011771号