2.1 程序設(shè)計概述
1. 程序設(shè)計方法簡介
設(shè)計方法 |
主要概念 |
設(shè)計過程 |
程序執(zhí)行方式 |
結(jié)構(gòu)化程序設(shè)計 | 功能模塊(即過程、自定義函數(shù)) | 編制各個功能模塊,再用主程序?qū)⑺鼈兇饋?/FONT> | 將應(yīng)用程序分解成若干功能模塊,通過各模塊的相互調(diào)用來完成整個執(zhí)行過程,是過程驅(qū)動的。 |
面向?qū)ο蟪绦蛟O(shè)計 | 類、對象、屬性、事件、方法 | 設(shè)計類、子類、對象(設(shè)計外觀、設(shè)置屬性、為事件編寫方法程序) | 將應(yīng)用程序分解成具有特定屬性的對象,通過調(diào)用各對象的不同方法來完成相關(guān)事件,是事件驅(qū)動的。 |
2.?dāng)?shù)據(jù)類型
VFP 包含下列數(shù)據(jù)類型:
通用的數(shù)據(jù)類型 |
字符型
Character |
貨幣型
Currency |
日期型
Date |
日期時間型
DateTime |
邏輯型
Logical |
數(shù)值型
Numeric |
僅用于字段的數(shù)據(jù)類型 |
雙精度型
Double |
浮點型
Float |
整型
Integer |
通用型
General |
備注型
Memo |
|
3. 數(shù)據(jù)容器
VFP中用來存儲數(shù)據(jù)的容器有:常量、變量、數(shù)組、記錄和對象。
(1) 常量(constants):
一個在操作過程中保持不變的數(shù)值或字符串。
常用的常量類型
常量類型 |
數(shù)值型常量 |
字符型常量 |
邏輯型常量 |
日期型常量 |
表示方式 |
-25.36 |
"abc","123","中國" |
.T. .F. |
{^2005/07/10} |
(2)變量(variables):
是內(nèi)存中的一個存儲單元的位置,其中的內(nèi)容可以變化,但標(biāo)識該存儲位置的名稱(即變量名)不變。
變量的命名習(xí)慣: 類型變量代號
如:cStud 、nCj 、dCsrq ——
分別代表一個字符型、數(shù)值型、日期型的變量名
變量的賦值方式: 1) 用 STORE 命令 如:STORE "王蘭" TO cStud
2) 用賦值操作符 = 如:cStud = "王蘭"
變量的作用域: 即變量起使用的有效范圍。
變量作用域 |
定義作用域的關(guān)鍵字 |
特點 |
局部變量 local variable(本地變量) |
LOCAL | 只能在一個函數(shù)或過程中被訪問,其他過程或函數(shù)不能訪問此變量的數(shù)據(jù)。當(dāng)其所屬程序停止運行時,局部變量將被釋放。 |
私有變量
private variable |
PRIVATE | 私有變量在 VFP 中是默認(rèn)的,不需要特殊的關(guān)鍵字定義。但是,如果在更高一級例程(routine)中已經(jīng)有同名變量,可以用PRIVATE 關(guān)鍵字予以聲明,以限定其范圍。當(dāng)定義此變量的例程結(jié)束時,此變量也被相應(yīng)釋放。可使用私有變量在被調(diào)用的函數(shù)中共享數(shù)據(jù)。 |
公共變量
public variable |
PUBLIC | 可用于所有過程和函數(shù),而不限于定義該變量的過程和函數(shù)。可使用全局變量在多個過程或函數(shù)之間共享數(shù)據(jù),在命令窗口中創(chuàng)建的任何變量自動具有全局屬性。 |
變量的訪問:
當(dāng)變量和字段同名時,字段有優(yōu)先被訪問權(quán)。要在變量名前加 m. 或 m -> 以示區(qū)別,如 m.cStud
(3)數(shù)組(array):
是存儲在一個變量中由單個變量名引用的有序數(shù)據(jù)集合。在 VFP中,一個數(shù)組中的數(shù)據(jù)不必是同一種數(shù)據(jù)類型。常用的有一維數(shù)組,二維數(shù)組。
數(shù)組元素的標(biāo)識:通過一個數(shù)值下標(biāo)來引用,如 AA[2],AA[2,3]
數(shù)組類型的聲明:
私有數(shù)組 ——用DECLARE 或 DIMENSION定義
全局?jǐn)?shù)組 ——用PUBLIC命定義
局部數(shù)組 ——用LOCAL定義
數(shù)組元素的賦值:
用賦值語句: 如 AA=45
用SCATTER從當(dāng)前記錄中取特定字段的值賦給數(shù)組:
如: scatter fields xh, xm, xb to aa
(數(shù)組長度、類型自動與所給字段相同)
用 COPY TO ARRAY從當(dāng)前記錄中取所有字段的值賦給數(shù)組:
如: copy to array aa
(數(shù)組長度、類型自動與表中全部字段相同)
把數(shù)組中的數(shù)據(jù)傳給當(dāng)前表中的當(dāng)前記錄:
gather from 數(shù)組名 [fields 字段名表]
用數(shù)組向當(dāng)前表添加記錄:
append from array 數(shù)組名 [for 條件] [[fields 字段名表]
(用二維數(shù)組可以同時添加多條記錄)
數(shù)組處理的常用函數(shù):
排序SORT(),搜索ASCAN(),刪除ADEL(),插入AINS()
(4) 記錄:
表中的一行,由字段組成。
(5) 對象:
對象是類的一個實例,類是對擁有數(shù)據(jù)和一定行為特征的對象集合的描述。VFP對象可以是表單、表單集、控件。
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |