标题很容易描述这个问题。
每次我可以将两个单独的语句放在一个块中时,我都会想到这个问题。尤其是当我为CPU成本问题(例如NP完全问题)编写代码时。
是否有必要将两个单独的语句组合在一起?。
答案 0 :(得分:5)
“ int a,b;”和“ int a; int b;”?
那些声明在语义上是等效的,并且没有理由为什么任何一个都会产生彼此不同的程序,因此没有理由在性能上会有差异。
但是,第一个声明要短几个字符,因此,从磁盘加载源文件所需的时间,编译过程可能会快几微秒。
是否有必要将两个单独的语句组合在一起?
一般来说,不是。
答案 1 :(得分:1)
正如其他人所述,两者都是等效的声明。一个可能比另一个编译得快一些。
它们都是声明。
可以在运行时通过在内存中分配空间(例如在堆栈上),保留寄存器或忽略来实现声明。
如果编译器发出用于变量分配的指令,则处理时间可以忽略不计(以纳秒或微秒为单位)。
在考虑性能时,您的第一个检查清单项目应为(按以下顺序):
通常,与真正快速而不可靠的程序相比,客户宁愿选择速度较慢的高质量程序。
利益相关者宁愿开发一个程序,也不愿为那些投资回报率(ROI)不高的优化付费。
注重质量和坚固性。仅在必要时进行优化。