c/c++基础知识篇(一) ---关键字static的使用场景

关键字static的使用场景

  1. 在全局变量前加上关键字static,全局变量就定义成一个全局静态变量,在静态存储区,整个程序运行期间一直存在,在声明他的文件之外是不可见的,作用域为定义之处到文件结束(修改标识符的链接属性)
  2. 在局部变量之前加上关键字static,局部变量就成为一个局部静态变量,在静态存储区,作用域仍为局部作用域,当定义它的函数或者语句块结束的时候,作用域结束。但是当局部静态变量离开作用域后,并没有销毁,而是仍然驻留在内存当中,只不过我们不能再对它进行访问,直到该函数再次被调用,并且值不变(修改标识符的存储类型)
  3. 在函数返回类型前加static,函数就定义为静态函数。函数的定义和声明在默认情况下都是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。函数的实现使用static修饰,那么这个函数只可在本cpp内使用,不会同其他cpp中的同名函数引起冲突

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