内容纲要
静态成员
静态成员变量
笔记见前面112讲部分
静态成员函数
静态成员函数可以访问静态成员变量。
静态成员函数 不可以 访问非静态成员变量。!!!!tip: 因为静态成员函数,不知道访问类的哪一个对象。
#include<iostream>
#include"string"
using namespace std;
class Person {
int age;
public:
static int m_Age;
static void stfunc() {
//age = 500; 此处会报错。静态成员函数不能访问非静态成员变量。
m_Age = 1000;
cout << "类中的静态成员函数被调用" << endl;
}
};
int Person::m_Age = 100;
static void stfunc() { //外部函数 可以和成员函数共存
cout << "静态成员函数被调用 " << endl;
}
void test() {
Person person1;
person1.m_Age = 200;
Person person2;
person2.m_Age = 300;
Person::stfunc();
stfunc();
}
void main() {
test();
cout << "静态成员改变其参数: " << Person::m_Age << endl;
}
静态成员函数的访问。
通过类名访问。Person::stfunc();
p.stfunc();
通过对象进行访问。- 要注意静态成员函数也有访问权限的要求