zoukankan      html  css  js  c++  java
  • static关键字

      分类:

      static变量:

        局部static变量:在函数内定义,生存周期为整个源程序,但作用域与自动变量相同,只能在定义的函数内使用。退出函数后,尽管该变量还继续存在,但不能使用

        全局static变量:全局变量本身就是静态存储方式。区别在于,全局静态变量的作用域是本文件内,而全局变量是整个程序(多个源文件)。

      static函数:

        也叫内部函数。只能被本文件中的函数调用。

        静态函数的好处(static静态不是指存储方式,而是指对函数的作用域仅局限与本文件):

          1 速度快:静态函数会被自动分配在一直使用的存储区,直到退出应用程序实例,避免了调用函数时压栈出栈。

          2 不重名:不会与其他文件的函数重名。

     

      static有什么用途?(请至少说明两种)
          1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。
          2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。
          3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用

      总结一下:

      1 隐藏功能,由其作用范围决定

      2 持久性功能,存储在静态区。

  • 相关阅读:
    P2523 [HAOI2011]Problem c
    P2518 [HAOI2010]计数
    P2513 [HAOI2009]逆序对数列
    P2519 [HAOI2011]problem a
    P5020 货币系统
    P2580 于是他错误的点名开始了(Trie)
    P3805 【模板】manacher算法
    基础
    白兔的字符串(hash入门)
    ACM的分类训练题集(转载)
  • 原文地址:https://www.cnblogs.com/luntai/p/6137743.html
Copyright © 2011-2022 走看看