快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

新蒲京澳门赌场网站:匈牙利命名法的探讨



自己上课的师长教师保举我们应用,但我发明在应用的历程中,跟着法度榜样的繁杂性,命名会变得越来越长,而且写的时刻轻易少打字母之类的,累个半逝世.这种命名法好处可以直接清楚明了知道类型.照样自己查资料看看怎么命名对照好.看了作者的原文,综合来看,这种措施得当特定的编程类型.

如:支持泛型编程和面向工具编程(这两种编程范型都是基于类型和参新蒲京澳门赌场网站数来选择相宜的操作)的说话来说,它却是完全分歧适的。

参考资料C新蒲京澳门赌场网站/C++高质量编程,The c programming lanuage,作者的网站

英文翻译如下:

不,我并不保举“匈牙利命名法”。我觉得“匈牙利命名法”(在变量名中嵌入类型的缩写)是一种对隐式类型说话来说行之有效的技术,但对支持泛型编程和面向工具编程(这两种编程范型都是基于类型和参数来选择相宜的操作)的说话来说,它却是完全分歧适的。在这种环境下,“把工具的类型用作名字的一部分”不仅繁杂化了抽象,更限定了抽象的程度。在不合程度上,我对各类将说话技巧细节信息(例如:感化域、存储类型、语法种别)嵌入(变量)名字的规划都持有保留立场。我批准在某些环境下,将类型提示嵌入变量名会很有赞助,但大年夜多半环境下,分外是跟着软件的成长,这会导致掩护危急,以致会严重侵害优秀的代码。像躲避瘟疫一样平常地阔别它吧。

是以,我不爱好根据类型命名变量;我爱好并保举什么?根据功能命名变量(函数、类型等等)。选择故意义的名字;亦即,选择有利于别人读懂你的法度榜样的名字。以致你自己每每也会难以理解你新蒲京澳门赌场网站的法度榜样到底是要干嘛用的,假如你在法度榜样中胡乱应用“易于拼写”的名字,例如 x1、x2、s3、p7 等等。缩写词和首字母缩写词很轻易肴杂视听,以是应该“省点儿”用这种词。首字母缩写词更是应该尽可能地避免。比如 mtbf、TLA、myw、RTFM、NBV 等等。此时此刻,它们的含义可能显而易见。但几个月过后,任谁也不敢保证必然不会忘掉落此中任何一个(的含义)。

短小的名字,例如 x 和 i,假如按传统习气来用的话,是故意义的;亦即,x 只被用作局部变量或者参数,而 i 用作轮回计数器。

不要应用过长的名字;它们难以拼写,并使代码行变得很长,乃至不能完全显示于屏幕上,而且也不易于涉猎。下面这些变量名看起来不错:

partial_sumelement_countstaple_partition

这两个就太长了点:

the_numb新蒲京澳门赌场网站er_of_elementsremaining_free_slots_in_symbol_table

我更爱好应用下划线来分隔标识符(例如 element_count)里的单词,而非调换应用大年夜小写,例如 elementCount 和 ElementCo新蒲京澳门赌场网站unt。名字里的字母绝对不要整个都用大年夜写(例如 BEGIN_TRANSACTION),由于整个大年夜写习气上是用于命名宏的。纵然你不用宏,但其他人大概会在他们的头文件中引用你的头文件。命名类型时,最好大年夜写首字母(例如 Square 和 Graph)。C++ 说话和标准库都不应用大年夜写字母,是以 int 非 Int,string 非 String。这样,你就能很轻易地辨认出哪些是标准类型,哪些是你定义的类型。[Page]

避免应用易于拼错、看错或肴杂的名字。例如:

namenamesnameS

foof00

flf1fIfi

字符 0、o、O、1、l 以及 I 分外轻易引起问题。

平日,命名习气的选择仅受限于局部的风格规则。牢记,维持风格的同等性经常比应用你觉得最好的要领处置惩罚各类小细节更为紧张。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: