首页 > 编程语言 >四种基本的编程命名规范(匈牙利命名法、驼峰式命名法、帕斯卡命名法、下划线命名法)

四种基本的编程命名规范(匈牙利命名法、驼峰式命名法、帕斯卡命名法、下划线命名法)

时间:2024-10-17 17:01:51浏览次数:10  
标签:下划线 驼峰 规范 E7% 单词 命名

匈牙利命名法

匈牙利命名法是一种编程时的命名规范。基本原则是:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。要基于容易记忆容易理解的原则。保证名字的连贯性是非常重要的。

据说这种命名法是一位叫 Charles Simonyi 的匈牙利程序员发明的,后来他在微软待了几年,于是这种命名法就通过微软的各种产品和文档资料向世界传播开了。大部分程序员不管自己使用什么软件进行开发,或多或少都使用了这种命名法。这种命名法的出发点是把变量名按:属性+类型+对象描述的顺序组合起来,以使程序员作变量时对变量的类型和其它属性有直观的了解,

C
int iMyAge; # "i": int
char cMyName[10]; # "c": char
float fManHeight; # "f": float
​ 前缀类型还有:

PLAINTEXT
a 数组(Array)
b 布尔值(Boolean)
by 字节(Byte)
c 有符号字符(Char)
cb 无符号字符(Char Byte,并没有神马人用的)
cr 颜色参考值(Color Ref)
cx,cy 坐标差(长度 Short Int)
dw 双字(Double Word)
fn 函数(Function)
h Handle(句柄)
i 整形(Int)
l 长整型(Long Int)
lp 长指针(Long Pointer)
m_ 类成员(Class Member)
n 短整型(Short Int)
np 近程指针(Near Pointer)
p 指针(Pointer)
s 字符串(String)
sz 以 Null 做结尾的字符串型(String with Zero End)
w 字(Word)
​ 还有其他更多的前缀是根据微软自己的 MFC / 句柄 / 控件 / 结构等东西定义的,就不过多描述了。

驼峰式命名法
​ 驼峰式命名法,又叫小驼峰式命名法(所以自然就存在大驼峰命名法啦……)。

​ 该命名规范,要求第一个单词首字母小写,后面其他单词首字母大写,简单粗暴易学易用。

C
int myAge;
char myName[10];
float manHeight;
帕斯卡命名法
​ 帕斯卡命名法,又叫大驼峰式命名法。

​ 与小驼峰式命名法的最大区别在于,每个单词的第一个字母都要大写。

C
int MyAge;
char MyName[10];
float ManHeight;
下划线命名法
​ 下划线命名法并不如大小驼峰式命名法那么备受推崇,但是也是浓墨重彩的一笔。尤其在宏定义和常量中使用比较多,通过下划线来分割全部都是大写的单词。

​ 该命名规范,也是很简单,要求单词与单词之间通过下划线连接即可。

C
int my_age;
char my_name[10];
float man_height;


【转载】 https://jrunding.github.io/2024/05/07/%E5%9B%9B%E7%A7%8D%E5%9F%BA%E6%9C%AC%E7%9A%84%E7%BC%96%E7%A8%8B%E5%91%BD%E5%90%8D%E8%A7%84%E8%8C%83/index

补充说明

随着技术的发展,命名规范也在不断的细化,一种命名规范早已无法系统的满足各方需求(匈牙利命名法除外,但是已经基本淘汰了),不同的语言不同 IDE 推崇的规范也有所不同,无法评判哪一种最好,但是可以肯定的是,集后三种命名规范大成者,一定是受众最广的。

标签:下划线,驼峰,规范,E7%,单词,命名
From: https://www.cnblogs.com/hjq111/p/18472684

相关文章

  • 2019-9-2-dotnet-命名管道名字长度限制
    titleauthordateCreateTimecategoriesdotnet命名管道名字长度限制lindexi2019-09-0211:54:50+08002019-09-0211:54:49+0800dotnet在dotnet里面可以使用NamedPipeClientStream作为命名管道,此时的命名有长度限制,要求在256字符之内从官方文档可以看到限制256字符内Thee......
  • 使用批处理对包含指定字符的文件进行批量重命名
    点击查看代码@echooffchcp65001rem使用批处理将文件夹下所有txt文件有11的字符重命名为22setlocalenabledelayedexpansion::遍历当前目录下的所有文件for%%Ain(*.txt)do(set"filename=%%~nxA"set"newfilename=!filename:11=22!"if"!filena......
  • 交叉编译器的命名规则是什么?
    交叉编译器(cross-compiler)是用来编译可在与编译器运行环境不同的架构或操作系统上运行的代码的工具。交叉编译器的命名通常遵循一个约定,以便能够描述编译器的目标平台。这个命名规则主要包含以下几个组成部分,通常顺序为:目标架构(TargetArchitecture):表示编译器生成代码的目标处......
  • aardio入门到精通04-标识符及命名规则、局部变量、成员变量、常量
    标识符、局部变量、名字空间、成员变量、importconsole;//一、标识符/*1)标识符是指编程语言中由起标识作用的英文字母、数字或中文字符、以及下划线组成的命名符号一般用来标识用户或系统定义的数据或方法,例如常量名、变量名、函数名等。2)标识符基本规则: -标识符......
  • vue2进阶篇:vue-router之命名路由
    @目录10.6命名路由案例:将案例改为“命名路由”完整代码本人其他相关文章链接10.6命名路由注意点1:命名路由请使用name属性,替换掉path属性的作用,且name直接指定名称即可,而path必须指定3级目录(path=’/demo/test/welcome’)才行。注意点2:name属性必须包裹在<router-link>标签......
  • NER-命名实体识别 入门解读
    NER在NLP领域算一个非常基础的问题,可以广泛应用于信息抽取、搜索引擎优化、情感分析、问答系统、推荐系统、市场营销等领域。主要方法有sequencelabeling(序列标注)、intervalprediction(区间预测)和questionanswering(问答)三种方法。写在前面:刚入门NER时,读一些顶会的最新文章......
  • 自定义 http header 名称中带下划线时,可能会被 nginx 忽略删除
    在设计自定义header时,会发现如user_id这样的header无法被后端读取到想来中间有一层nginx搜了一下果然是它的影响,具体情况就不记录了,可以看参考链接。简单记录是因为下划线可能会导致一些兼容性问题,所以nginx默认不允许header名称带下划线,但也允许手动开启。解决方......
  • react事件命名
    exportdefaultfunctionButton(){functionhandleClick(){alert('你点击了我!');}return(<buttononClick={handleClick}>点我</button>);}按照惯例,通常将事件处理程序命名为handle,后接事件名。你会经常看到onClick={handleClick},on......
  • Bi-LSTM-CRF实现中文命名实体识别工具(TensorFlow)
    关于深度实战社区我们是一个深度学习领域的独立工作室。团队成员有:中科大硕士、纽约大学硕士、浙江大学硕士、华东理工博士等,曾在腾讯、百度、德勤等担任算法工程师/产品经理。全网20多万+粉丝,拥有2篇国家级人工智能发明专利。社区特色:深度实战算法创新获取全部完整项目......
  • OncePower批量重命名绿色版
    OncePower是一款专为Windows平台设计的文件和文件夹批量重命名工具。它不仅支持基本的批量重命名功能,还提供了一些额外的实用功能,如批量删除空文件夹和批量移动文件。使用OncePower,无需学习复杂的正则表达式即可进行高级匹配和重命名操作。软件功能github.com/ilgnef......