我在构造函数或类Valuable
中有一些有用的代码。我想确定它是在submain
之前执行的。我如何保证它没有被优化?
int main()
{
// Dear compiler, please don't optimize ctor call out!
Valuable var;
return submain();
}
局部变量够吗?我需要使用
static
吗?static Valuable *v = new Valuable();
delete v;
v = NULL;
我可以缩短一个类轮吗?
delete new Valuable();
最佳答案
如果您的构造函数或析构函数具有可观察到的行为,则编译器的不允许对其进行优化。因此,无需做任何棘手的事情。