static静态成员
声明为static的类成员称为类的静态成员,用static修饰的成员变量,称之为静态成员变量;用static修饰的成员函数,称之为静态成员函数。静态的成员变量一定要在类外进行初始化
特性:
1.静态成员为所有类对象所共享,不属于某个具体的实例
2.静态成员变量必须在类外定义,定义时不添加static关键字
3.类静态成员即可用 类名::静态成员 或者 对象.静态成员来访问
4.静态成员函数没有隐藏的this指针,不能访问任何非静态成员
5.静态成员和类的普通成员一样,也有public、protected、private3种访问级别,也可以具有返回
6.static成员函数不能调用非static成员函数,但是非static成员函数可以调用static成员函数。
C++11的成员数初始化新方法
#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
class A {
public:
A(int a = 1) :_a()
{
}
void print()
{
cout << this->_a << endl;
}
private:
int _a=0; //C++11的成员初始化新方法
//此处的缺省值只有在无其他值可用时才会使用
//仅限于非static成员
};
int main()
{
A x;
x.print();
return 0;
}