+ -
当前位置:首页 → 问答吧 → 关于static用法的求助

关于static用法的求助

时间:2011-12-17

来源:互联网

static的有个用法是这样描述的:

“在模块内,被声明为静态的函数只能被这一模块内的其他函数调用。”

请问,这里所指的模块,在VS中是不是指整个Solution

作者: yuhuimoon   发布时间: 2011-12-17

不是
指的是cpp文件
static表明此函数是内部链接

作者: et214721856   发布时间: 2011-12-17

static表明此函数是内部链接
未指定则是外部链接

作者: agoago_2009   发布时间: 2011-12-17

static是文件作用域,只能被定义在同一个文件的函数访问。

作者: logicouter   发布时间: 2011-12-17

楼上正解!

作者: wizard_tiger   发布时间: 2011-12-17

不是,是指这一个程序块

C/C++ code

int abc(int c, int d)
{
   int a;
   static int b;
   .....
}


第二次调用这个函数,a的值会重新计算,而b的值会保留第一次结果

作者: i945800687   发布时间: 2011-12-17

引用 5 楼 i945800687 的回复:
不是,是指这一个程序块


C/C++ code

int abc(int c, int d)
{
int a;
static int b;
.....
}


第二次调用这个函数,a的值会重新计算,而b的值会保留第一次结果


不好意思,没讲清楚,应该是“b的值会以第一次结果作为初值”

作者: i945800687   发布时间: 2011-12-17