在变量中初始化和算术运算是不好的做法吗?也就是说我有多个不同面积尺寸的房间,我必须找到以下区域:
(以英尺为单位)
double room_area1 = 9.5 * 6.8;
double room_area2 = 9.1 * 6.2;
double room_area3 = 10.0 * 7.1;
或者最好这样做:
double room_area1 = 9.5;
room_area1 = room_area1 * 6.8;
这两种方式之间是否有任何差异,或者它是一样的,只是风格问题?
答案 0 :(得分:2)
首先只涉及一个操作:初始化,
第二项涉及两项操作:初始化+分配。
对于像double
这样的内部数据类型,开销可以忽略不计,但对于用户定义的数据类型,第二类对性能有害(多少?分析应该告诉)。
因此,一般来说,使用First是更好的做法,因为:
答案 1 :(得分:2)
第一种方式更好。原因:它更具可读性。
虽然这是正确的,但这些结构在语义上是不同的,对于简单类型,编译器几乎肯定会优化第二种情况,就像第一种情况一样,并生成相同的机器代码,存储一个常量(在编译时计算)到room_area1
。
答案 2 :(得分:1)
第一个例子没有错。事实上,这样做更好,因为你可以声明变量const。