常用变量命名规则

常用变量命名规则 

 

一、匈牙利命名法【Hungarian】:  

      广泛应用于象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    

 

二、骆驼命名法【camelCase】

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

   printEmployeePaychecks();  

    print_employee_paychecks();  

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

    骆驼式命名法近年来越来越流行了,在许多新的函数库和Microsoft 

Windows这样的环境中,它使用得当相多。另一方面,下划线法是c出现后开始流行起来的,在许多旧的程序和UNIX这样的环境中,它的使用非常普遍。   

 

三、帕斯卡命名法【PascalCase】:  

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

       如:public void               DisplayInfo();               string UserName; 

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

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

在C#中,简单的变量一般用camelCase规则,而比较高级的命名使用PascalCase。 如.net Framework的公共字段及公共属性。】  

简单说  

MyData是一個帕斯卡命名的示例。 myData是一個骆驼命名法。 

iMyData是一個匈牙利命名法,小些说明了变量的类型或者用途。

 

posted @   wenglabs  阅读(1572)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示