我的变量命名约定是否有名称?

Pet*_*ner 9 delphi naming-conventions

所以我通过这个参数的Delphi命名方案开始于A,类变量以F开头,本地变量以M开头.该方案有名称吗?我在Delphi源代码中看到了很多,我想阅读更多关于它的信息,但我不确定它叫什么.

Dav*_*vid 18

这种编码风格是专门的在叫了Object Pascal的设计指南被匈牙利命名法(有一个例外,枚举类型.)

你所谈论的具体编码约定并没有这样的名称,据我所知,只是你编写符合CodeGear(旧Borland)编码风格指南的代码.该指南似乎没有给这个风格起个名字.

您在Delphi源代码中看到很多的原因是因为本指南基于Delphi团队开发的编码风格!

这份文件非常值得一读 - 不仅适用于代码指南,也适用于其提及的其他内容.


Ste*_*202 10

您的架构可以被视为某种形式的匈牙利表示法(HN).通常HN用于表示变量的类型,但正如维基百科所说,

有时在C++中扩展该表示法以包括变量的范围,由下划线分隔.这种扩展通常也可以在没有匈牙利类型规范的情况下使用:[..]


Mir*_*lus 10

我会说你的命名惯例并不符合匈牙利表示法,但它有点接近查尔斯西蒙尼发明的原始匈牙利表示法,后来被称为Apps Hungarian.但并不完全.

实际上有两种类型的匈牙利表示法:

  • 应用程序匈牙利语 - 想法是根据它们存储的内容的语义信息来装饰标识符名称,所以基本上是变量的目的:
    rwElement - variable represents a row ("rw")
    colElement - variable represents a columns ("col")
  • 系统匈牙利语 - 前缀编码变量的实际数据类型.
    szName - variable is a zero-terminated string ("sz")
    lAccount - variable is a long integer ("l")

因此,虽然命名约定在某种程度上代表了某种目的,但它并不是真正的Apps匈牙利语所指的目的.

  • 他正在使用一种表示范围的匈牙利语.我不会说这比数据类型更接近目的. (2认同)

Yis*_*hai 7

一般来说,这听起来像匈牙利符号 - 但是没有指定A,F或M约定,具体而言,只是将类型信息预先添加到名称中.

  • 匈牙利表示法可以以不同的方式完成,但作为一般规则,将语言特定信息放在变量名称中称为匈牙利表示法.乔尔着名地说,它应该以不同的方式使用,但不管它"应该"如何,这就是人们所说的.http://www.joelonsoftware.com/articles/Wrong.html (2认同)

Rob*_*edy 7

你的命名约定的一般类别称为匈牙利符号(可能比通常更广泛的意义,即名称有一个描述变量的前缀),但不,你的约定没有任何更具体的名称.

我以前从未见过你特别选择的前缀.我所看到的最接近的是Indy约定,它使用A作为参数,F表示字段,G表示全局,L表示本地,当然通常用于接口,T用于记录和类.属性和子例程没有前缀.