gpt4 book ai didi

C++ - 对象何时销毁

转载 作者:行者123 更新时间:2023-11-30 01:03:01 27 4
gpt4 key购买 nike

我有一个类用作用于测试的临时目录的句柄。它是这样使用的:

{
TestArea ta("name_of_test");
ta.call_method( );
test_stuff( );
...
}

当到达结束 } 时,ta 变量超出范围,所有内容都被清除。在许多情况下,我不需要调用任何 TestArea 方法——这就足够了:

{
TestArea("name_of_test");
test_stuff();
}

TestArea 实例没有关联的左值。现在我的问题是 - 什么时候会在这个地方调用 TestArea 析构函数?后一种代码实际上似乎有效 - 但我对此有点不安。

最佳答案

TestArea("name_of_test");

您创建了一个临时对象,该临时对象将立即销毁。

所以一旦使用它的表达式结束了,那么这个对象就不再存在了。

关于C++ - 对象何时销毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54973112/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com