c++类静态成员和静态函数使用

类静态成员和静态函数使用

#include <iostream>
#include <thread>

using namespace std;

class Student
{
public:
	static int num;  //定义一个静态变量,初始化一次
	int a;			 //每次new 对象实例的时候,初始化一次
	Student()
	{
		num += 1;
	}
	~Student()
	{
		num -= 1;
	}

	void print()
	{

	}

	static void display()
	{
		//静态函数注意事项:
		//静态函数无法使用this指针,是因为静态函数没有类成员函数指针
		//静态函数无法访问类成员和成员函数
		//静态函数主要和静态成员一块使用
	}
};

int Student::num = 0; //1.初始化静态成员num 


//类静态成员

int main(int argc, char *argv[])
{
	Student stu1;
	//使用静态成员方式1
	cout << Student::num << endl;
	//使用静态成员方式2
	cout << stu1.num << endl;

	

	//类中的静态函数
	//打印静态函数和非静态函数的区别
	cout << typeid(&Student::print).name() << endl;
	cout << typeid(&Student::display).name() << endl;

	//调用静态函数方式1
	Student::display();
	
	//调用静态函数方式2
	stu1.display();

	cin.get();
	return 0;
}

类静态函数和非静态区别,静态函数没有this指针

秋风 2018-03-20