我有一個使用Config :: Tiny讀取全局配置文件的腳本。基於選擇變量,我的腳本爲SQLite,MySQL或PgSQL選擇一個子例程。子程序結束時私人變量會發生什麼變化?
現在配置文件在腳本的頂部被讀取並且變量被設置在子例程之外。但考慮到MySQL變量與PgSQL或SQLite無關,我想在子例程中設置私有變量。唯一的事情我想知道的是一旦子例程已經運行過程中發生了什麼變化?他們被刪除?
我有一個使用Config :: Tiny讀取全局配置文件的腳本。基於選擇變量,我的腳本爲SQLite,MySQL或PgSQL選擇一個子例程。子程序結束時私人變量會發生什麼變化?
現在配置文件在腳本的頂部被讀取並且變量被設置在子例程之外。但考慮到MySQL變量與PgSQL或SQLite無關,我想在子例程中設置私有變量。唯一的事情我想知道的是一旦子例程已經運行過程中發生了什麼變化?他們被刪除?
子程序返回後,子程序中聲明的變量不存在。他們的內存將被釋放,並且任何引用的值都將有資格進行垃圾回收(假設沒有其他引用這些值)。
詞法變量表現爲這種方式;包變量有不同的行爲。 – 2010-11-28 02:22:02
完美!我只是想確定腳本何時運行,它不會保留變量使用的空間。 – ianc1215 2010-11-28 02:32:15