搜索
bottom↓
回复: 6

最近在学Delphi,在网上找了常用的几种变量命名法(匈牙利、骆驼、帕斯卡命名法)介绍,分享

[复制链接]

出0入0汤圆

发表于 2008-8-19 11:21:52 | 显示全部楼层 |阅读模式
一、匈牙利命名法:

  广泛应用于象Microsoft Windows这样的环境中。

  Windows 编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的 Microsoft 程序员查尔斯·西蒙尼(Charles Simonyi) 提出的。

  匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等。这些符号可以多个同时使用,顺序是先m_(成员变量),再指针,再简单数据类型,再其他。例如:m_lpszStr, 表示指向一个以0字符结尾的字符串的长指针成员变量。

  匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。

  匈牙利命名法中常用的小写字母的前缀:

    前缀  类型

a   数组 (Array)   
b   布尔值 (Boolean)   
by  字节 (Byte)   
c   有符号字符 (Char)   
cb  无符号字符 (Char Byte,没有多少人用)   
cr  颜色参考值 (ColorRef)   
cx,cy 坐标差(长度 ShortInt)   
dw  Double Word   
fn  函数   
h   Handle(句柄)   
i   整型   
l   长整型 (Long Int)   
lp  Long Pointer   
m_  类的成员   
n   短整型 (Short Int)   
np  Near Pointer   
p   Pointer   
s   字符串型   
sz  以null做结尾的字符串型 (String with Zero End)   
w   Word   
二、骆驼命名法:

  骆驼式命令法,正如它的名称所表示的那样,是指混合使用大小写字母来构成变量和函数的名字。例如,下面是分别用骆驼式命名法和下划线法命名的同一个函数:

printEmployeePaychecks();

print_employee_paychecks();

  第一个函数名使用了骆驼式命名法——函数名中的每一个逻辑断点都有一个大写字母来标记;第二个函数名使用了下划线法----函数名中的每一个逻辑断点都有一个下划线来标记。

  骆驼式命名法近年来越来越流行了,在许多新的函数库和Microsoft Windows这样的环境中,它使用得当相多。另一方面,下划线法是c出现后开始流行起来的,在许多旧的程序和UNIX这样的环境中,它的使用非常普遍。

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

  与骆驼命名法类似。只不过骆驼命名法是首字母小写,而帕斯卡命名法是首字母大写,如:

public void DisplayInfo();

string UserName;

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

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

简单说

MyData 就是一個帕斯卡命名的示例

而myData是一個骆驼命名法,它第一個單詞的第一個字母小寫,後面的單詞首字母大寫,看起來像一個骆驼

而iMyData是一個匈牙利命名法,它的小寫的i說明了它的型態,後面的和帕斯卡命名相同,指示了該變量的用途。

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2008-8-19 12:49:54 | 显示全部楼层
和C一样的,匈牙利命名法,骆驼命名法。

出0入0汤圆

 楼主| 发表于 2008-8-19 14:02:29 | 显示全部楼层
【1楼】 usbfish
谢谢!

出0入0汤圆

发表于 2008-8-20 22:54:05 | 显示全部楼层
没想到我平时用的是写的变量什么的用的是骆驼法,函数名字用的帕斯卡命名法。
哈哈!帖子比较精辟,顶你哈!

出0入0汤圆

发表于 2009-3-4 22:06:45 | 显示全部楼层
学习了,顶一个

出0入0汤圆

发表于 2009-3-4 23:50:36 | 显示全部楼层
我是骆驼法和帕斯特法混合用,以前还专门花了时间研究过这东西

出0入0汤圆

发表于 2009-3-5 07:32:36 | 显示全部楼层
谢谢
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-5 10:58

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表