匹配变量类型有好处吗?

时间:2014-10-08 09:40:57

标签: c#

Stellman& Greene(2010),其中一个练习如下(为简洁起见):

  

定义Hive的常量:你需要一个常量,用于蜂巢开始的蜂蜜量(3.2)和蜂巢可存储的最大蜂蜜量(15)。 (第555页)

除了该段,他们还发表以下评论:

  

你必须为每个人以及类型找出好名字。对于类型,不要只考虑初始值,还要考虑这些常量将使用的值。 双打最好与其他双打搭配,并与其他双打合作。 (第555页,重点补充)

他们对该练习的解决方案如下(第556页):

private const double InitialHoney = 3.2;
private const double MaximumHoney = 15;

他们发表评论:"由于InitialHoney需要成为双倍,因此最好将其设为双倍。" (第556页)。

我搜索了这本书,用Google搜索并查看了StackOverflow,但找不到这个原因,为什么这是最好的"。当两个变量都用在方法中时,它可能会保存一个变量的显式转换,但显式定义整数为int有助于防止错误使用。

问题:那我错过了什么?为什么它最好"在C#中有匹配的变量类型?


Stellman,A。& Greene,J。(2010)。 Head First C#:一个关注大脑的指南(第2版)。加州塞巴斯托波尔:O'Reilly Media。

1 个答案:

答案 0 :(得分:1)

如果预期变量,字段,常量可用于其他double类型的变量,结果将为double,则应使用double键入所有涉及的值。我会对任何类型应用相同的规则。

如果您知道自己只需获得int结果,为什么强制从/ double强制转换为double?{/ p>

这不适用于可能在其他地方使用某个号码的情况。我并不是在提倡一条规则,即“如果在您的代码中需要使用dobule,则所有数字都将使用double ”键入。老实说,我会使用常识。