c++中的关键字static

关于static,笔试面试也是经常提及,如下的问题是一个经典问题,我在彪琪数码科技笔试题中也遇到了。

问:关键字static的作用是什么?

答:

C语言中,关键字static有三个明显的作用:

1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。

2) 在文件模块内(但在函数体外),一个被声明为静态的全局变量可以被模块内所有函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

3) 在文件模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。

大多数应试者能正确回答第一部分,一部分能正确回答第二部分,很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。

郁闷的是:我的回答很具体,static变量,类的static成员变量,类的static成员函数,不知道面试官会如何看待我的回答,哎,还是要多做题。

你可能感兴趣的:(C++,c,面试,语言)