
2008年2月29日
摘要: C++ 中的static
1、static 是C++中很常用的修飾符,它被用來(lái)控制變量的存儲(chǔ)方式和可見(jiàn)性。
2、為什么要引入static?
函數(shù)內(nèi)部定義的變量,在程序執(zhí)行到它的定義處時(shí),編譯器為它在棧上分配空間,大家知道,函數(shù)在棧上分配的空間在此函數(shù)執(zhí)行結(jié)束時(shí)會(huì)釋放掉,這樣就產(chǎn)生了一個(gè)問(wèn)題: 如果想將函數(shù)中此變量的值保存至下一次調(diào)用時(shí),如何實(shí)現(xiàn)?最容易想到的方法是定義一個(gè)全局的變量,但定義為一個(gè)全局變量有許多缺點(diǎn),最明顯的缺點(diǎn)是破壞了此變量的訪(fǎng)問(wèn)范圍(使得在此函數(shù)中定義的變量,不僅僅受此函數(shù)控制)。
閱讀全文