常用变量命名规则

简介:

常用变量命名规则 

 

一、匈牙利命名法【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是一個匈牙利命名法,小些说明了变量的类型或者用途。

 

没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。






    本文转自wenglabs博客园博客,原文链接:http://www.cnblogs.com/arxive/p/6374771.html ,如需转载请自行联系原作者

相关文章
|
存储 Unix Linux
Linux / Mac 常用命令,看这一篇就够了!(上)
Linux命令是在命令行(CLI)上运行的程序。命令行是接受文本行并将其处理成计算机指令的界面。任何图形用户界面 (GUI) 都是命令行程序的抽象。通过 GUI 进行多步骤处理的任务有时候可以通过在命令行中键入命令在几秒钟内完成。学习基本的命令行有助于提升工作效率。 相信很多小伙伴会使用 Mac 进行开发,由于 Mac 的系统是基于unix的,所以 Mac 终端的一些命令与linux通用的。下面列举的多数命令是可以在Mac中使用的。
1016 0
|
编解码 算法 测试技术
在不影响动画质量的前提下对 Lottie 动画文件进行压缩
【10月更文挑战第16天】在不影响动画质量的前提下对 Lottie 动画文件进行压缩需要综合运用多种方法和策略。通过细致的分析、合理的调整和适当的技术手段,可以在保持动画视觉效果的同时,有效地减小文件的大小,提升动画的性能和用户体验。
795 57
|
10月前
|
机器学习/深度学习 自动驾驶 计算机视觉
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V1 基于 Ghost Module 和 Ghost Bottlenecks的轻量化网络结构
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V1 基于 Ghost Module 和 Ghost Bottlenecks的轻量化网络结构
423 61
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V1 基于 Ghost Module 和 Ghost Bottlenecks的轻量化网络结构
|
SQL 人工智能 自然语言处理
NL2SQL进阶系列(2):DAIL-SQL、DB-GPT开源应用实践详解Text2SQL
NL2SQL进阶系列(2):DAIL-SQL、DB-GPT开源应用实践详解Text2SQL
NL2SQL进阶系列(2):DAIL-SQL、DB-GPT开源应用实践详解Text2SQL
|
存储 Python
数据包络分析(Data Envelopment Analysis, DEA)详解与Python代码示例
数据包络分析(Data Envelopment Analysis, DEA)详解与Python代码示例
|
SQL 物联网 数据处理
NL2SQL进阶系列(1):DB-GPT-Hub、SQLcoder、Text2SQL开源应用实践详解
NL2SQL进阶系列(1):DB-GPT-Hub、SQLcoder、Text2SQL开源应用实践详解
NL2SQL进阶系列(1):DB-GPT-Hub、SQLcoder、Text2SQL开源应用实践详解
|
存储 Java
SpringBoot导入和导出Csv文件(二十八)上
SpringBoot导入和导出Csv文件(二十八)上
1793 1
SpringBoot导入和导出Csv文件(二十八)上
|
算法 数据挖掘 开发者
LeetCode题目55:跳跃游戏【python5种算法贪心/回溯/动态规划/优化贪心/索引哈希映射 详解】
LeetCode题目55:跳跃游戏【python5种算法贪心/回溯/动态规划/优化贪心/索引哈希映射 详解】
|
Linux iOS开发 MacOS
利用Python中的Manim进行数学绘画和创作
利用Python中的Manim进行数学绘画和创作
673 0
|
编解码
MATLAB | 科研绘图第二十二期信号分解中用于展示效果的三维瀑布图
MATLAB | 科研绘图第二十二期信号分解中用于展示效果的三维瀑布图
309 0