变量类型前缀约定

时间:2011-07-20 13:43:34

标签: variables naming-conventions conventions

我曾经听说过一个很好的命名变量约定(强类型语言)是在它们前面添加变量类型的第一个字母。

例如(在C ++中):

int iInterestRate;
string sMessage;

我不确定这样做有什么好处。 有吗?如果是这样,他们是什么?这是一个很好的,可接受的命名变量约定吗?

1 个答案:

答案 0 :(得分:1)

听起来你听说过匈牙利系统符号,它曾经是一个公认的惯例。

好吗?取决于你问谁。对我而言,前缀很好,其原因并非如此。

这些天系统匈牙利人经常受到极大的蔑视 - 因为这是一个错误。最初的(Apps)匈牙利人的意图被误解了,接下来的是一团糟。

当然,匈牙利系统有一些优势,维基百科会尝试列表:

http://en.wikipedia.org/wiki/Hungarian_notation#Advantages

关于这个主题并不缺乏热烈的评论 - 我不会在这里反复讨论 - 我只是提出你不应该使用一个严格的变量前缀系统 数据 类型。

但是,如果您想知道使用 逻辑 类型为变量添加前缀是否有优势,答案是不合格的“是”。

看看匈牙利应用程序:

http://msdn.microsoft.com/en-us/library/Aa260976

http://www.byteshift.de/msg/hungarian-notation-doug-klunder

我不是在宣传整个事情,我只是说他们的推理是合理的。

前缀的优点和缺点是非常主观的。有人说它使代码难以阅读,而其他人则没有问题。有些人发现更改名称更难,有些人发现更容易。

我吗?我更喜欢我的编码语言很容易与人类英语区别开来。前缀使我能够控制我本来不具备的代码。我不知道或不关心我的代码难以阅读 - 我关心它易于理解

所以是的,一个简单的前缀约定是好的。只是不要称之为匈牙利语。