• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            This blog has been shut down permanently.

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              13 隨筆 :: 0 文章 :: 25 評(píng)論 :: 0 Trackbacks

            簡(jiǎn)單的說(shuō)

            MyData 就是一個(gè)帕斯卡命名法
            而myData是一個(gè)駱駝命名法,它第一個(gè)單詞的第一個(gè)字母小寫(xiě),后面的單詞首字母大寫(xiě),看起來(lái)像一個(gè)駱駝
            而iMyData是一個(gè)匈牙利命名法,它的小寫(xiě)的i說(shuō)明了它的形態(tài),后面的和帕斯卡命名相同,指示了該變量的用途.

             

            一、匈牙利命名法:廣泛應(yīng)用于象Microsoft Windows這樣的環(huán)境中。

                   Windows 編程中用到的變量(還包括宏)的命名規(guī)則匈牙利命名法,這種命名技術(shù)是由一位 Microsoft 程序員查爾斯·西蒙尼(Charles Simonyi) 提出的。

            匈牙利命名法通過(guò)在變量名前面加上相應(yīng)的小寫(xiě)字母的符號(hào)標(biāo)識(shí)作為前綴,標(biāo)識(shí)出變量的作用域,類(lèi)型等。這些符號(hào)可以多個(gè)同時(shí)使用,順序是先m_(成員變量),再指針,再簡(jiǎn)單數(shù)據(jù)類(lèi)型,再其他。例如:m_lpszStr, 表示指向一個(gè)以0字符結(jié)尾的字符串的長(zhǎng)指針成員變量。

                 匈牙利命名法關(guān)鍵是:標(biāo)識(shí)符的名字以一個(gè)或者多個(gè)小寫(xiě)字母開(kāi)頭作為前綴;前綴之后的是首字母大寫(xiě)的一個(gè)單詞或多個(gè)單詞組合,該單詞要指明變量的用途。

            匈牙利命名法中常用的小寫(xiě)字母的前綴:

            前 綴        類(lèi)  型
            a                數(shù)組 (Array)  
            b                布爾值 (Boolean)  
            by              字節(jié) (Byte)  
            c               有符號(hào)字符 (Char)  
            cb             無(wú)符號(hào)字符 (Char Byte,沒(méi)有多少人用)  
            cr              顏色參考值 (ColorRef)  
            cx,cy          坐標(biāo)差(長(zhǎng)度 ShortInt)  
            dw            Double Word  
            fn               函數(shù)  
            h                 Handle(句柄)  
            i                 整型  
            l               長(zhǎng)整型 (Long Int)  
            lp              Long Pointer  
            m_           類(lèi)的成員  
            n             短整型 (Short Int)  
            np           Near Pointer  
            p             Pointer  
            s            字符串型  
            sz          以null做結(jié)尾的字符串型 (String with Zero End)  
            w         Word  


            二、駱駝命名法:

                     駱駝式命令法,正如它的名稱(chēng)所表示的那樣,是指混合使用大小寫(xiě)字母來(lái)構(gòu)成變量和函數(shù)的名字。例如,下面是分別用駱駝式命名法和下劃線法命名的同一個(gè)函數(shù):

                printEmployeePaychecks();

                 print_employee_paychecks();

                  第一個(gè)函數(shù)名使用了駱駝式命名法——函數(shù)名中的每一個(gè)邏輯斷點(diǎn)都有一個(gè)大寫(xiě)字母來(lái)標(biāo)記;第二個(gè)函數(shù)名使用了下劃線法----函數(shù)名中的每一個(gè)邏輯斷點(diǎn)都有一個(gè)下劃線來(lái)標(biāo)記。

                 駱駝式命名法近年來(lái)越來(lái)越流行了,在許多新的函數(shù)庫(kù)和Microsoft
            Windows這樣的環(huán)境中,它使用得當(dāng)相多。另一方面,下劃線法是c出現(xiàn)后開(kāi)始流行起來(lái)的,在許多舊的程序和UNIX這樣的環(huán)境中,它的使用非常普遍。


            三、帕斯卡(pascal)命名法:

                    與駱駝命名法類(lèi)似。只不過(guò)駱駝命名法是首字母小寫(xiě),而帕斯卡命名法是首字母大寫(xiě)

                    如:public void
            DisplayInfo();

                           string UserName;

                           二者都是采用了帕斯卡命名法.


            在C#中,以帕斯卡命名法和駱駝命名法居多。

            轉(zhuǎn)自http://www.zouyang.net/post/219.html

            posted on 2010-03-11 13:21 iZ 閱讀(2326) 評(píng)論(5)  編輯 收藏 引用 所屬分類(lèi): 『Software Engineering』

            評(píng)論

            # re: 駱駝命名法,帕斯卡命名法和匈牙利命名法 2010-03-12 10:44 iSsay
            PS:
            The Microsoft naming conventions suggest using camel notation (initial lowercase such as someName) for variable names and Pascal notation (initial uppercase such as SomeOtherName) for method names and most other identifiers.

            Microsoft no longer recommends using Hungarian notation (e.g., iSomeInteger) or underscores (e.g., Some_Value).  回復(fù)  更多評(píng)論
              

            # re: 駱駝命名法,帕斯卡命名法和匈牙利命名法 2010-03-12 11:16 陳梓瀚(vczh)
            原本匈牙利命名法,并不是按照變量的“聲明類(lèi)型”,而是變量的“實(shí)際類(lèi)型”來(lái)命名的。

            錯(cuò)誤:
            char* pszName = "旺財(cái)";
            Person* person=new Person;
            person->pszName = pszName;

            正確:
            char* dogName = "旺財(cái)";
            Person* person=new Person;
            person->name = dogName;  回復(fù)  更多評(píng)論
              

            # re: 駱駝命名法,帕斯卡命名法和匈牙利命名法 2010-03-12 16:44 iSsay
            @陳梓瀚(vczh)

            不存在你所說(shuō)的問(wèn)題。匈牙利命名法有兩種:系統(tǒng)匈牙利命名法和匈牙利應(yīng)用命名法。所以?xún)煞N辦法怎么用,主要看個(gè)人習(xí)慣咯。

            現(xiàn)在微軟已不提倡使用匈牙利命名法,所以沒(méi)有太多討論的價(jià)值。而駱駝法多使用在變量命名上,帕斯卡多使用于方法函數(shù)、及其他標(biāo)識(shí)符。

            話說(shuō)回來(lái)你的例子有點(diǎn)荒誕(最后一行)  回復(fù)  更多評(píng)論
              

            # re: 駱駝命名法,帕斯卡命名法和匈牙利命名法 2010-03-12 17:37 陳梓瀚(vczh)
            @iSsay
            這正是這種命名法的好處嘛,一看就知道有沒(méi)有寫(xiě)錯(cuò)。  回復(fù)  更多評(píng)論
              

            # re: 駱駝命名法,帕斯卡命名法和匈牙利命名法 2010-03-22 16:45 iSsay
            @陳梓瀚(vczh)
            呵呵,也對(duì)。
            目前,有駱駝和帕斯卡命名法已完全夠用了。
            駱駝法用于變量,例如:someVariety
            帕斯卡用于方法、其他標(biāo)識(shí)符,例如:SomeMethod
            命名的時(shí)候最好使用Verb+Noun的形式
            簡(jiǎn)單直觀一目了然  回復(fù)  更多評(píng)論
              


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久婷婷人人澡人人爽人人爱| 亚洲色大成网站www久久九| 久久综合给合久久狠狠狠97色69| 久久精品中文无码资源站| 色欲久久久天天天综合网 | 亚洲综合精品香蕉久久网97| 久久99精品久久久久久久久久| 久久综合丁香激情久久| 久久久久久A亚洲欧洲AV冫| 久久久久久综合网天天| 天天爽天天爽天天片a久久网| 欧美精品一区二区久久| 久久狠狠高潮亚洲精品| 久久精品国产亚洲AV不卡| 久久精品国产亚洲av麻豆蜜芽| 热99re久久国超精品首页| 无码任你躁久久久久久老妇| 久久久久久久久久久久中文字幕 | 久久天天躁狠狠躁夜夜网站| 国产真实乱对白精彩久久| 亚洲欧美日韩中文久久| 久久久WWW成人免费精品| AV无码久久久久不卡蜜桃| 亚洲精品成人网久久久久久| 久久99国产精品99久久 | 无码日韩人妻精品久久蜜桃| 久久国产成人| 亚洲国产成人久久综合碰碰动漫3d | 久久精品国产只有精品2020| 久久精品国产亚洲AV香蕉| 久久人人爽人人爽人人片AV东京热 | 久久久久久精品免费看SSS | 久久性生大片免费观看性| 久久福利青草精品资源站| 久久永久免费人妻精品下载| 亚洲日韩中文无码久久| 一本色道久久88综合日韩精品| 久久精品成人| 久久人妻少妇嫩草AV无码蜜桃| 精品久久久久中文字幕一区| 精品久久人人妻人人做精品|