static 用法www

 

static关键字是CC++中都存在的关键字, 它主要有三种使用方式,

其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同).  

(1) 局部静态变量。 静态局部变量有两个用法,记忆功能和全局生存期.

(2) 外部静态变量/函数。 用于全局变量,主要作用是限制此全局变量被其他的文件调用

(3) 静态数据成员/成员函数 表示这个成员是属于这个类但是不属于类中任意特定对象(C++)

 

1.Static修饰局部变量 (作用域,生命期)

首先,一般的局部变量存放在内存的栈区,当函数运行完了后,内存就被释放。

静态局部变量存放在内存的静态区,生命期一直到程序结束后完结。作用域还是和一般的局部变量一样,只在函数中。

 

2.Static修饰全局变量和函数

static修饰符可以使函数仅在当前模块(文件)中有效,外部模块无法调用static修饰的函数;
如果全局存在同名的函数,则static会屏蔽掉全局函数,相当于在当前模块中重载这个函数.
 
使用(static)内部函数的好处是:不同的人编写不同的函数时,不用担心自己定义的函数,是否会与其它文件中的函数同名。
 

3.Static修饰类成员

(这一条只在C++中有效)

Static修饰的类成员就是类属性

静态成员变量:一个类的公共属性,只有一个拷贝。((与Java中此关键字的含义相同)。

你用Siezof 一个类就能看到,静态成员变量占的内存就不被计算在内。

静态成员函数:只能访问静态的类成员,不管是成员变量还是成员函数都必须是Static的

 

 

link

http://blog.csdn.net/soul_/article/details/6480347

 http://www.cppblog.com/SpringSnow/archive/2008/10/11/springsnow.html

 

?static修饰符的应用难点在于“多线程编程”和“面向对象编程”?》http://blog.chinaunix.net/uid-21778123-id-1815422.html

posted on 2012-05-17 17:25  luofeng225  阅读(221)  评论(0编辑  收藏  举报

导航