閱讀445 返回首頁    go 阿裏雲 go 技術社區[雲棲]


靜態局部變量

以前經常使用和了解static作用在全局變量前,以至於甚至把static當做全局變量的代名詞,但是其實static還可以作用於局部變量前

靜態局部變量的意義:

1.分配空間在全局數據棧上

2.作用域隻局限於當前的函數範圍內(局部)

3.生命周期為整個程序,不會隨著當前的函數結束而結束

4.首次初始化時賦值生效,以後的初始化賦值自動跳過

void fn()

{
    static n=10;
    cout<<n<<endl;
    n++;
}

這裏的n是一個靜態局部變量,隻有第一執行fn函數時會調用static n=10,以後都不會調用

 

有例子使用這種一次聲明賦值的特性來實現單件

最後更新:2017-04-03 20:19:52

  上一篇:go iOS開發那些事-構建自適應iPhone和iPad工程
  下一篇:go HttpClient 流式讀取時中文亂碼的解決方法