C _复习07(静态成员变量和成员函数)

一、静态成员变量与成员函数的一些规则

  • 关键字 static 可以用于说明一个类的成员为静态成员变量,静态成员变量提供了一个同类对象的共享机制
  • 把一个成员说明为 static 时,这个类无论有多少个对象被创建,这些对象共享这个static成员
  • 静态成员局部于类,他不是对象成员!

二、代码展示

#include <iostream>
using namespace std;

class Test
{
public:
	int addC() { c++; };
	void printC() { cout << "c: " << c << endl; }
	//静态成员函数
	//在静态成员函数中能调用普通成员属性或者普通成员函数吗?
	//静态函数里面不能使用普通成员变量
	static int getC() { 
		return c; 
		//静态成员函数里面能使用静态成员变量
		//但是普通成员变量静态函数无法使用
		//因为编译器不知道是哪个类的变量
		//而静态成员是属于所有类的,所以可以使用
		//cout << "a: " << a << endl;
	}
private:
	int a;
	int b;
	//静态成员变量
	static int c;
};
int Test::c = 10;

void objectplay1() {
	Test t1, t2, t3;
	//c的值一改变,所有都改变
	t1.printC();
	t2.addC();
	t3.printC();
	//静态成员函数的调用方法
	t3.getC();
	Test::getC();
}

int main()
{
	system("pause");
}
发布了27 篇原创文章 · 获赞 3 · 访问量 3336

猜你喜欢

转载自blog.csdn.net/weixin_40977054/article/details/102572155
今日推荐