1

可能重复:
如何在 C++ 中禁止临时对象

有时我打算写一些类似的东西

{
    MyClass anInstance( param );
    // other code...
}

但实际上写了

{
    MyClass( param );
    // other code...
}

结果,析构函数在析构函数之后立即被调用,而不是在作用域的末尾。有没有办法编写类来使这个错误产生编译错误?如果做不到这一点,也许我可以打开一个可选警告?(我在 Mac OS X 上使用 Clang。)

4

0 回答 0