黑马程序员技术交流社区
标题:
关于static
[打印本页]
作者:
hailiqh
时间:
2015-9-30 17:31
标题:
关于static
例:
void test()
{static int b = 10;
printf("%d\n",b++);}
int main( )
{for (int i = 0;i<10;i++){
test( );}
return 0;}
结果为:
10
11
12
13
14
15
16
17
18
19
老师说如果去掉static结果为10 .........10(10个)
不明白这是为什么?static是啥作用?
作者:
meijunwei6275
时间:
2015-9-30 17:53
1,想要实现对象中的共性数据的对象共享。可以将这个数据进行静态修饰。
2,被静态修饰的成员,可以直接被类名所调用。也就是说,静态的成员多了一种调用方式。类名.静态方式。
3,静态随着类的加载而加载。而且优先于对象存在。
作者:
任振铭
时间:
2015-9-30 19:32
不知道啊
作者:
洪吉童
时间:
2015-9-30 20:49
这就是static的作用之一啊,如果没有static,每次调用函数都要初始化一下变量b。有了static,那么这个变量就被存储在静态存储区(全局变量一样也是存储在静态存储区,只不过二者的作用范围不一样),在这个区里的变量初始化只有一次,只有第一次
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2