static的作用

来源:互联网 发布:产品图纸设计软件 编辑:程序博客网 时间:2024/06/03 05:14

1.屏蔽同名冲突,限定变量或函数只在本文件中可见。

2.存储在静态存储区,保持数据持久性。

3.

结果是:

1

2

3


结果也是:

1

2

3

这说明变量不再受局部的限制了,因为全局存储区是不受限制的。

3.面向对象的静态成员变量。

对于非静态数据成员,每个类对象都有自己的拷贝。而静态数据成员被当作是类的成员。无论这个类的对象被定义了多少个,静态数据成员在程序中也只有一份拷贝,由该类型的所有对象共享访问。也就是说,静态数据成员是该类的所有对象所共有的。对该类的多个对象来说,静态数据成员只分配一次内存,供所有对象共用。所以,静态数据成员的值对每个对象都是一样的,它的值可以更新;

4.面向对象的静态成员函数

静态成员之间可以相互访问,包括静态成员函数访问静态数据成员和访问静态成员函数;

静态成员函数不能访问非静态成员函数和非静态数据成员;

非静态成员函数可以任意地访问静态成员函数和静态数据成员;

由于没有this指针的额外开销,因此静态成员函数与类的全局函数相比速度上会有少许的增长;

If you have any questions or ideas ,please feel free to contact me : )

thx.^^


QQ: 1623213673