C++中 靜態(tài)局部變量實例詳解
C++中 靜態(tài)局部變量實例詳解
以前經(jīng)常使用和了解static作用在全局變量前,以至于甚至把static當(dāng)做全局變量的代名詞,但是其實static還可以作用于局部變量前
靜態(tài)局部變量的意義:
1.分配空間在全局?jǐn)?shù)據(jù)棧上
2.作用域只局限于當(dāng)前的函數(shù)范圍內(nèi)(局部)
3.生命周期為整個程序,不會隨著當(dāng)前的函數(shù)結(jié)束而結(jié)束
4.首次初始化時賦值生效,以后的初始化賦值自動跳過
如
void fn() { static n=10; cout<<n<<endl; n++; }
這里的n是一個靜態(tài)局部變量,只有第一執(zhí)行fn函數(shù)時會調(diào)用static n=10,以后都不會調(diào)用
有例子使用這種一次聲明賦值的特性來實現(xiàn)單件
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
C++實現(xiàn)學(xué)生檔案管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實現(xiàn)學(xué)生檔案管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05詳解C++標(biāo)準(zhǔn)庫中處理正則表達(dá)式的類std::regex
std?是?C++?標(biāo)準(zhǔn)庫的命名空間,包含了大量標(biāo)準(zhǔn)的?C++?類、函數(shù)和對象,這些類和函數(shù)提供了廣泛的功能,包括輸入輸出、容器、算法、字符串處理等,這篇文章主要介紹了C++標(biāo)準(zhǔn)庫中提供的用于處理正則表達(dá)式的類std::regex,需要的朋友可以參考下2024-03-03