特别是C++,如果它很重要,但我想象的答案在于汇编代码。更快地重复使用通用作用域中定义的变量还是重新定义每个内部作用域中的变量?
如果我们在一个共同作用域(比如一个函数)中使用了多个相同类型变量的块,那么定义常用作用域中的变量并在每个块中重新初始化变量会更快,或者重新定义初始化它在每个块(或没有根本的区别)?
例子:
int i;
{//block 1
i = SomeFunction();
...
}
{//block 2
i = SomeOtherFunction();
...
}
与
{//block 1
int i = SomeFunction();
...
}
{//block 2
int i = SomeOtherFunction();
...
}
不平凡的构造函数*或析构函数* ...? – 2010-10-07 04:02:38
这取决于输入哪个块,是的。如果输入了两个块,则如果将该变量声明为本地,则会导致额外的对象破坏。如果没有块被输入,显然你不会得到任何破坏(并且没有创建!) – 2010-10-07 04:27:30