c++ - C++ - 对象何时被销毁
问题描述
我有一个类作为用于测试的临时目录的句柄。它是这样使用的:
{
TestArea ta("name_of_test");
ta.call_method( );
test_stuff( );
...
}
当}
达到关闭时,ta
变量超出范围,一切都被清理干净。在许多情况下,我不需要调用任何TestArea
方法——这就足够了:
{
TestArea("name_of_test");
test_stuff();
}
即没有与TestArea
实例关联的左值。现在我的问题是 - 什么时候会TestArea
在这个地方调用析构函数?后一个代码实际上似乎有效 - 但我对此有点不安。
解决方案
和
TestArea("name_of_test");
您创建一个临时对象,该临时对象将立即被破坏。
因此,一旦使用它的表达式结束,则该对象不再存在。
推荐阅读
- python-2.7 - 安装 pygsl 模块 [Python 2.7, anaconda]
- javascript - 过滤子对象必须匹配所有条件的对象数组
- python - Pyspark Dataframe O(n^2) 复杂性循环的有效方法
- python - Micropython - 如何在 C 中创建一个继承在 C 中定义的另一种类型的类型?
- python - 更改 CSV 列中的数据格式
- r - 如何将值从一个表复制到另一个表
- html - Flex 项目溢出容器
- php - 如何在 wordpress 4.9.7 中启用站点网络?
- maven - 使用 maven 构建后 Jar 文件不在目标文件夹中 - KOTLIN
- java - 两个线程可以访问同一个类的两个不同的静态方法吗