匈牙利表示法

Win n Win

Win32Asm源程式風格採用匈牙利表示法,是由Microsoft公司的程式設計人員Charles Simonyi首創的。在匈牙利表示法中,變數名以一個或多個小寫字母開始,代表變數的類型。後面附以變數的名字,變數名以意義明確的大小寫混合字母序列所構成。這種方案允許每個變數都附有表征變數類型的信息。如:WORD wParam1;LONG lParam2;HANDLE HINSTANCE。其優點:通過給每個變數名加上表示所屬數據類型的前綴,從而在編譯前即可防止許多常見的錯誤。如下面的語句看起來正確,實際不正確,但卻容易漏過檢查:
Param1=Param2
使用匈牙利表示法,就很容易查出下面的錯誤。
wParam1=lParam2
變數的前綴及含義
前綴 隱含的數據類型 說明
b BOOL 實際為整型
by BYTE 無符號字元
c char 字元
dw DWORD 無符號長型
fn function 函式
h HANDLE 無符號整型
i integer 整數
l LONG 長型
lp Long pointer 遠指針
n Short(integer) 整型
np Near pointer 近指針
p pointer 指針
s string 字元串
sz Zero terminated string 以0結尾的字元串
w WORD 整數或字
x,y short X坐標和y坐標
cx,cy short X方向長和y方向長,c代表count(量度)
遠指
遠指針用32位值確定記憶體地址,它指明了記憶體的特定的段值和段內的偏移量。
近指針
遠指針用16位值確定記憶體地址,它代表模組預設數據段的一個偏移值。
句柄
句柄是視窗用來標識創建或使用應用程式的唯一的整數值。視窗要使用各種不同的句柄來標識應用程式實例、視窗、選單、控制、分配的記憶體區和設備接口對象等。
WinMain函式具有hInstance句柄參數.視窗中不僅一次能同時運行多個程式,而且能多次運行同一個應用程式,即運行多個副本,每個副本叫做一個實例。為區別實例,視窗在每次調用WinMain函式時,要提供一個不同的實例句柄,即代表句柄的不同的實際值。也就是說,一個實例是應用程式的一個單獨的可執行副本,而實例句柄是唯一標識實例的整數。每當運行應用程式的新實例(一個副本)時,僅載入該應用程式的數據.這樣視窗對應用程式的所有實例都使用相同代碼,可以大大節省空間。
對大多數程式來說,第一個實例作用較特殊,它創建的許多資源都可以被以後所有實例使用,而不需要重新創建。

相關詞條

相關搜尋

熱門詞條

聯絡我們