关键字static
2012-08-22 23:02
106 查看
一、关键字static的作用
1. 函数体内static变量的作用范围为该函数体。
2. 模块内的static全局变量可以被模块内所有函数访问,但不能被模块外其他函数访问。
3. 在模块内的static函数只可被这一模块内的其他函数调用。
4. 在类中的static成员变量属于整个类所拥有,对类的所有对象只有一份拷贝。
5. 在类中的static成员函数属于整个类所拥有,但只能访问类的static成员变量。
二、static全局变量与普通全局变量有什么区别
1. 两者的存储区域相同。
2. static全局变量的作用域为定义该变量的源文件,而普通全局变量的作用域为整个源程序。
三、static局部变量和普通局部变量的区别
1. static局部变量存储在静态存储区,局部变量存储在栈区。
2. 两者的作用域都为某个函数或复合语句内,但静态局部变量在函数或复合语句结束时不会自动释放,保留其最后的值到程序结束,而普通局部变量在函数或复合语句结束时会自动释放。
四、static函数和普通函数的区别
1. static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝。
2. 静态函数不能被其他文件所用,而普通函数可以。
1. 函数体内static变量的作用范围为该函数体。
2. 模块内的static全局变量可以被模块内所有函数访问,但不能被模块外其他函数访问。
3. 在模块内的static函数只可被这一模块内的其他函数调用。
4. 在类中的static成员变量属于整个类所拥有,对类的所有对象只有一份拷贝。
5. 在类中的static成员函数属于整个类所拥有,但只能访问类的static成员变量。
二、static全局变量与普通全局变量有什么区别
1. 两者的存储区域相同。
2. static全局变量的作用域为定义该变量的源文件,而普通全局变量的作用域为整个源程序。
三、static局部变量和普通局部变量的区别
1. static局部变量存储在静态存储区,局部变量存储在栈区。
2. 两者的作用域都为某个函数或复合语句内,但静态局部变量在函数或复合语句结束时不会自动释放,保留其最后的值到程序结束,而普通局部变量在函数或复合语句结束时会自动释放。
四、static函数和普通函数的区别
1. static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝。
2. 静态函数不能被其他文件所用,而普通函数可以。
相关文章推荐
- 关键字static、const、volatile的作用
- C/C++中的static关键字的作用
- Java基础知识之static关键字
- JAVA基础初探(三)面向对象思想、类与对象、成员变量与局部变量、构造方法、static关键字详解
- 23、static关键字
- Static关键字
- C++中的static关键字
- 6.1面向对象(介绍,类与对象,封装,this关键字,构造方法,static关键字)
- C++中的static关键字
- java关键字——static
- Java学习笔记之关键字static
- C++中的static关键字 (转载)
- java中static关键字的用法
- static 关键字
- php面向对象类中的$this,static,final,const,self及双冒号 :: 这几个关键字使用方法。
- static,const和typedef关键字的几种用途
- php中$this、static、final、const、self 等几个关键字的用法
- 黑马程序员——OC语言基础---extern和static关键字
- C/C++中关键字static作用总结
- 关键字static 的作用是什么?