遞迴程式中的靜態變數
由於靜態變數在程式開始執行時系統就分配了一塊記憶體空間給他,直到整個程式結束才被釋放掉。所以以下遞迴函式在進入函式時為靜態變數開闢了記憶體空間,在遞迴呼叫的過程中,不會再開闢新的記憶體空間,而是對原有記憶體空間的操作。以下程式執行結果是1,2,3,4,5……
Sub sta()
Static i As Integer
i = i + 1
MsgBox i
sta
End Sub
Sub sta()
Static i As Integer
i = i + 1
MsgBox i
sta
End Sub
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11411056/viewspace-734286/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- js中的靜態變數JS變數
- 靜態變數和非靜態變數變數
- 靜態變數與靜態方法變數
- static靜態變數的理解變數
- 【C++】靜態持續變數?如何建立靜態持續變數?C++變數
- 靜態持續變數變數
- 靜態變數和Session變數Session
- PHP類的靜態(static)方法和靜態(static)變數PHP變數
- java優化程式設計-靜態變數Java優化程式設計變數
- 函式的靜態變數 static函式變數
- PHP的靜態變數介紹PHP變數
- 全域性變數和靜態變數的區別變數
- 繫結變數在靜態sql和動態sql中變數SQL
- C語言區域性變數、全域性變數、靜態區域性變數、靜態全域性變數C語言變數
- 區域性變數和全域性變數(靜態和非靜態)區別變數
- 理解靜態區域性變數(static)在程式中的執行規則變數
- 靜態全域性變數和全域性變數變數
- 靜態變數和例項變數區別?變數
- 遞迴函式,可變引數列表遞迴函式
- Java靜態變數塊使用案例Java變數
- C/C++ 靜態變數解析C++變數
- VBA靜態變數與常量(轉)變數
- static 靜態變數引起 Laravel 中佇列一個 Bug變數Laravel佇列
- C#靜態建構函式及靜態變數學習C#函式變數
- Java自學入門之靜態變數Java變數
- asp.net中使用靜態變數ASP.NET變數
- 關於例項變數和靜態變數的一點疑問變數
- JavaScript中的遞迴JavaScript遞迴
- 動態修改 NodeJS 程式中的變數值NodeJS變數
- 成員變數、全域性變數、例項變數、類變數、靜態變數和區域性變數的區別變數
- python-動態規劃的遞迴、非遞迴實現Python動態規劃遞迴
- 注意for迴圈中變數的作用域變數
- Java逆向基礎之靜態變數存取Java變數
- Spring如何為靜態變數注入值Spring變數
- C語言--靜態區域性變數C語言變數
- C++ static variable(靜態變數) 學習C++變數
- java靜態變數和靜態函式是否可以被繼承,重寫!Java變數函式繼承
- 避免因在類中使用靜態函式而大量使用靜態變數 (轉)函式變數