我曾经听说过一个很好的命名变量约定(强类型语言)是在它们前面添加变量类型的第一个字母。
例如(在C ++中):
int iInterestRate;
string sMessage;
我不确定这样做有什么好处。 有吗?如果是这样,他们是什么?这是一个很好的,可接受的命名变量约定吗?
答案 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
我不是在宣传整个事情,我只是说他们的推理是合理的。
前缀的优点和缺点是非常主观的。有人说它使代码难以阅读,而其他人则没有问题。有些人发现更改名称更难,有些人发现更容易。
我吗?我更喜欢我的编码语言很容易与人类英语区别开来。前缀使我能够控制我本来不具备的代码。我不知道或不关心我的代码难以阅读 - 我关心它易于理解。
所以是的,一个简单的前缀约定是好的。只是不要称之为匈牙利语。