经常在Delphi中使用前缀表示法有不同的名称吗?

Pre*_*ion 6 delphi coding-style

可能重复:
我的变量命名约定是否有名称?

有问题的符号通过以下示例描述:

  • T因为t ype
  • P为了p ointer
  • F对于˚F ield
  • A为了一个争论
  • L为了l ocal

等等,列表中至少有S缺失,但我不确定它指定的是哪个字符串.

从一开始就有Delphi的前三个备份,最后2个我最近注意到了.我想知道符号名称(如果有的话),并阅读一些规范性白皮书(然后采用,可能是).

lke*_*ler 5

Zarko Gajic在这里有一个非常好的Delphi特定列表:http: //delphi.about.com/od/standards/l/bldnc.htm

就个人而言,我发现这样的一些惯例是有用的.我还记得我的第一语言FORTRAN,其中Integers的惯例是从I到N开始任何字母,并且很容易记住,因为它们是INteger的前两个字母.

Charles Calvert 的Object Pascal样式指南"3.3字段命名"部分给出了关于何时使用匈牙利表示法以及单个字符标识符名称适当的简短但良好的指导.我的FORTRAN背景(最多8个字符名称)也让我使用"N"作为项目的数量,并导致代码,如:

   DO 10 I = 1, N
     DO 20 J = I, N
       ...
20   CONTINUE
10 CONTINUE
Run Code Online (Sandbox Code Playgroud)

哎哟! 记忆受伤了.


Tru*_*ill 0

匈牙利记数法。

有了现代 IDE(包括 Delphi 的),很多人(包括我自己)都觉得不再需要了。

编辑:从技术上讲,这不是真正的匈牙利表示法,因为有时前缀表示范围而不是类型。

  • @David:*因为不幸的决定使 Pascal 的大小写变得不敏感* -> 好吧,我不得不不同意。我发现真正不幸的是 21 世纪仍在创建新的区分大小写的语言(例如 C#)。没有必要进行这样的恐龙练习…… (5认同)
  • -1 因为:1)Delphi 不是真正的匈牙利表示法(您没有将数据类型放在名称中),2)您声明不再需要它。当项目不断增长,并且您不是唯一一个从事该项目的人时,这种统一的符号是必须的。我遭受了太多的痛苦,因为我必须检查和修改的代码没有使用这样的符号。有时,您无法在 IDE 中加载项目,而必须一一加载源文件。在这种情况下,标准命名约定会很有帮助。不要相信你的感觉!:) (4认同)
  • 这在 [Object Pascal 风格指南](http://edn.embarcadero.com/article/10280) 中被特别指出,因为“不是”匈牙利表示法,枚举类型除外。这个问题可能是[这个问题的重复](http://stackoverflow.com/questions/1140562/does-my-variable-naming-convention-have-a-name),我的回答更详细。对区分大小写的事情没有评论:) (2认同)