匈牙利命名法

2021-05-22 02:26:59 字數 1256 閱讀 3503

匈牙利命名法

匈牙利命名法是一種程式設計時的命名規範。基本原則是:變數名=屬性+型別+物件描述,其中每一物件的名稱都要求有明確含義,可以取物件名字全稱或名字的一部分。命名要基於容易記憶容易理解的原則。保證名字的連貫性是非常重要的。

舉例來說,表單的名稱為form,那麼在匈牙利命名法中可以簡寫為frm,則當表單變數名稱為switchboard時,變數全稱應該為 frmswitchboard。這樣可以很容易從變數名看出switchboard是乙個表單,同樣,如果此變數型別為標籤,那麼就應命名成 lblswitchboard。可以看出,匈牙利命名法非常便於記憶,而且使變數名非常清晰易懂,這樣,增強了**的可讀性,方便各程式設計師之間相互交流**。

據說這種命名法是一位叫 charles simonyi 的匈牙利程式設計師發明的,後來他在微軟呆了幾年,於是這種命名法就通過微軟的各種產品和文件資料向世界傳播開了。現在,大部分程式設計師不管自己使用什麼軟體進行開發,或多或少都使用了這種命名法。這種命名法的出發點是把變數名按:屬性+型別+物件描述的順序組合起來,以使程式設計師作變數時對變數的型別和其它屬性有直觀的了解,下面是hn變數命名規範,其中也有一些是我個人的偏向:

屬性部分

全域性變數

g_ 常量

c_ c++類成員變數

m_ 靜態變數

s_ 型別部分

指標 p

函式 fn

無效 v

控制代碼 h

長整型 l

布林 b

浮點型(有時也指檔案) f

雙字 dw

字串

sz 短整型 n

雙精度浮點 d

計數 c(通常用cnt)

字元 ch(通常用c)

整型 i(通常用n)

位元組 by 字

w 實型 r

無符號 u

描述部分

最大 max

最小 min

初始化

init

臨時變數

t(或temp)

源物件

src

目的物件

dest

這裡順便寫幾個例子:

hwnd : h 是型別描述,表示控制代碼, wnd 是變數物件描述,表示視窗,所以 hwnd 表示視窗控制代碼;

g_cch : g_ 是屬性描述,表示全域性變數,c 和 ch 分別是計數型別和字元型別,一起表示變數類

型,這裡忽略了物件描述,所以它表示乙個對字元進行計數的全域性變數。

匈牙利命名法

匈牙利命名法 匈牙利命名法是一種程式設計時的命名規範。基本原則是 變數名 屬性 型別 物件描述,其中每一物件的名稱都要求有明確含義,可以取物件名字全稱或名字的一部分。命名要基於容易記憶容易理解的原則。保證名字的連貫性是非常重要的。舉例來說,表單的名稱為form,那麼在匈牙利命名法中可以簡寫為frm,...

匈牙利命名法

匈牙利命名法是一種程式設計時的命名規範。基本原則是 變數名 屬性 型別 物件描述,其中每一物件的名稱都要求有明確含義,可以取物件名字全稱或名字的一部分。命名要基於容易記憶容易理解的原則。保證名字的連貫性是非常重要的。舉例來說,表單的名稱為form,那麼在匈牙利命名法中可以簡寫為frm,則當表單變數名...

匈牙利命名法

該約定是由生於匈牙利布達佩斯的charles simonyi 開發的,它通過在資料和函式名中加入額外的資訊以增進程式設計師對程式的理解。例如 char ch 所有的字元變數均以ch 開始 byte b 所有的位元組均冠以b long l 所有的長字均冠以l 對於指向某個資料型別的指標,可以先象上面那...