6.4 變量、過程的作用域
1. VB應(yīng)用程序的組成:
2. 過程的作用域 作用范圍
模塊級
全局級
窗體
標(biāo)準(zhǔn)模塊
窗體
標(biāo)準(zhǔn)模塊
定義方式
過程名前加Private
例:Private Sub my1(形參表)
過程名前加Pubilc 或默認(rèn)
例:[ Pubilc ] Sub my2(形參表)
能否被本模塊其他過程調(diào)用
能
能
能
能
能否被本應(yīng)用程序其他模塊調(diào)用
不能
不能
能,但必須在過程名前加窗體名。例:
Call 窗體名. My1(實參表)
能,但過程名必須,否則需要加標(biāo)準(zhǔn)模塊名。例:
Call 標(biāo)準(zhǔn)模塊名.My2(實參表)
3. 變量的作用域
作用范圍
局部變量
窗體/模塊級變量
全局變量
窗體
標(biāo)準(zhǔn)模塊
聲明方式
Dim、Static
Dim、Private
Public
聲明位置
在過程中
窗體/模塊的“通用聲明”段
窗體/模塊的“通用聲明”段
能否被本模塊其他過程存取
不能
能
能
能否被其他模塊存取
不能
不能
能,但在變量名前加窗體名
能
4.靜態(tài)變量
用Static聲明的靜態(tài)變量,在每次調(diào)用過程時保持原來的值,不重新初始化。而用Dim聲明的變量,每次調(diào)用過程時,重新初始化
例:顯示1到5個數(shù)。
5.同名變量
對不同范圍內(nèi)出現(xiàn)的同名變量,可以用模塊名加以區(qū)別。一般情況下,當(dāng)變量名相同而作用域不同時,優(yōu)先訪問局限性大的變量。
1. VB應(yīng)用程序的組成:
2. 過程的作用域 作用范圍
模塊級
全局級
窗體
標(biāo)準(zhǔn)模塊
窗體
標(biāo)準(zhǔn)模塊
定義方式
過程名前加Private
例:Private Sub my1(形參表)
過程名前加Pubilc 或默認(rèn)
例:[ Pubilc ] Sub my2(形參表)
能否被本模塊其他過程調(diào)用
能
能
能
能
能否被本應(yīng)用程序其他模塊調(diào)用
不能
不能
能,但必須在過程名前加窗體名。例:
Call 窗體名. My1(實參表)
能,但過程名必須,否則需要加標(biāo)準(zhǔn)模塊名。例:
Call 標(biāo)準(zhǔn)模塊名.My2(實參表)
3. 變量的作用域
作用范圍
局部變量
窗體/模塊級變量
全局變量
窗體
標(biāo)準(zhǔn)模塊
聲明方式
Dim、Static
Dim、Private
Public
聲明位置
在過程中
窗體/模塊的“通用聲明”段
窗體/模塊的“通用聲明”段
能否被本模塊其他過程存取
不能
能
能
能否被其他模塊存取
不能
不能
能,但在變量名前加窗體名
能
4.靜態(tài)變量
用Static聲明的靜態(tài)變量,在每次調(diào)用過程時保持原來的值,不重新初始化。而用Dim聲明的變量,每次調(diào)用過程時,重新初始化
例:顯示1到5個數(shù)。
5.同名變量
對不同范圍內(nèi)出現(xiàn)的同名變量,可以用模塊名加以區(qū)別。一般情況下,當(dāng)變量名相同而作用域不同時,優(yōu)先訪問局限性大的變量。

