- 静态成员函数不具有this指针。
- 在静态成员函数中不能直接访问非静态成员
- 若要访问非静态成员,必须通过传参的形式得到相应对象,再通过对象访问成员(对象引用做参数,然后用对象调用)。
- 私有静态成员函数不能做类外部的函数和对象访问。
- 在类外调用共有的静态成员函数使用格式为 类名::静态成员函数名()(在类外定义静态成员函数也不需要加static前缀,在类外赋值静态函数成员格式为 类型?类名::静态函数成员=。。)。
- 可以在建立对象之前处理静态数据成员。
- 静态数据成员具有先后顺序的性质,即先在某个函数中进行了赋值,那么下一个函数所执行使用静态成员将继续使用修改后的值(共享)。
- 编译系统会将静态成员函数限定为内部连接(在其它文件中不可见)
-
#include<iostream>
using namespace std;
class zll{//类。
public://全部为公有。
int a;
static int stp;//静态函数成员
zll(int x);//构造函数。
static void dps(zll& y);//3
};
int zll::stp=666;//5
void zll::dps(zll& y){//5
cout<<y.a<<endl;
cout<<stp<<endl;
}
zll::zll(int x){
a=x;
stp=stp+a;
}
int main(){
zll q(10);
zll::dps(q);
return 0;
} ?
|