3

在一行上定义多个变量是否为构建过程提供了某种形式的优化,或者它只是一种编码风格的选择?

例如会这样:

void foo()
{
    int a, b, c, d;

    ..... // do something with a,b,c and d
}

对此提供任何优化:

void bar()
{
    int a;
    int b;
    int c;
    int d;

    ..... // do something with a,b,c and d
}
4

4 回答 4

4

没有值得这样称呼的优化。

唯一的好处是加载到内存和解析的字符稍微少一些。我怀疑你甚至可以衡量差异。

酌情使用与团队其他成员或您的个人偏好一致的编程风格。

于 2013-01-09T17:05:16.037 回答
3

可能,是的。较小的输入文件对于编译器来说读取速度更快。但这在很大程度上取决于编译器的实现。如果您有兴趣以独立于编译器的方式减少构建时间,可以进行许多其他优化。John Lakos 的Large-Scale C++ Software Design是一本非常值得阅读的书。

于 2013-01-09T17:09:57.773 回答
1

这只是编码风格的一种选择。就个人而言,我讨厌在一行上定义多个变量。

于 2013-01-09T17:05:41.733 回答
0

例如,就毫秒而言,您几乎看不到任何差异。但是,是的,存在差异,一行变量的编译速度比其他变量快。

于 2013-01-09T17:07:15.547 回答