複製鏈接
請複製以下鏈接發送給好友

內存變量

鎖定
內存變量即VFP中的變量,是內存中存儲一個數據的位置名稱,在這個存儲位置中存放的數據在操作期間通過這個名稱來讀和寫。
中文名
內存變量
內    容
VFP中的變量
實    質
內存中存儲數據的位置名稱
詳細內容
見正文

內存變量定義

內存變量是表結構之外獨立存在於內存中的變量。內存變量可用來存儲數據,定義內存變量時需為它取名並賦初值,內存變量建立後存儲於內存中。

內存變量類型

VFP中共定義了6種類型的內存變量:數值型、字符型、日期型、日期時間型、邏輯型和貨幣型,可分為簡單變量和數組變量

內存變量創建

內存變量可以在被賦值時自動創建,給變量賦值的方法有兩種:
使用賦值運算符“=”或 STORE命令
格式一:使用賦值運算符“=”
<內存變量>=<表達式>
格式二:使用STORE命令
STORE eExpression TO VarNamelist / STORE <表達式>TO <內存變量表>
功能:計算表達式,然後將計算結果賦給內存變量。
在程序中自動創建的變量和數組均為私有型,而在命令窗口中自動創建的變量和數組為全局型。內存變量的類型與所賦值的常量的類型相同。STORE命令可包括多個內存變量,但變量與變量之間須用逗號分隔。

內存變量作用域

用LOCAL,PRIVATE和PUBLIC關鍵字可以指定變量的作用域。
用LOCAL定義的變量或數組局部變量或數組,局部變量或數組只能在創建它們的程序中使用和修改,不能被更高層次或者更低層次的程序訪問,在它們所屬的程序停止運行時,局部變量和數組將被釋放。
用PRIVATR定義的變量和數組為私有數組。通過PRIVATE可將調用程序中定義的變量和數組在當前程序中隱藏起來,這樣用户變可以在當前程序停止運行,所以被聲明為私有的變量和數組均可重新被訪問。
用PUBLIC定義的變量或數組為全局(公共)變量。任何運行程序都能對全局變量進行使用和修改。

內存變量與字段同名訪問

如果內存變量和字段同名,直接使用變量訪問是字段,要訪問內存變量應該在變量名前加上“m.”,如有一個字段名為XB,有一個名為XB的內存變量,則要給該內存變量給值8,可使用的語言為:M.XB=8

內存變量保存和恢復

可使用SAVE TO命名把內存變量保存到內存變量文件中,也可使用RESTORE命令把內存變量文件中的內存變量及值恢復到內存中。
SAVE TO命令的格式如下:
SAVE TO FileName[ALL LIKE Skeleton|ALL EXCEPT Skeleton]
格式中的FileName為內存變量的文件名,默認的擴展名為.MEM,Skeleton用來指定一類變量,可在其中使用“*”和“?”通配符,通配符的含義與文件名通配符基本一致。
RESTORE命令的格式如下:
RESTORE FROM FileName [ADDITIVE]
格式中的FileName為內存變量文件的文件名,若使用ADDITIVE關鍵字,則當前存在的內存變量仍保留,只是將內存變量文件中保存的內存變量追加到當前內存中來,否則當前內存變量被清除。