【发布时间】:2015-11-20 11:27:28
【问题描述】:
假设我有以下代码。
vector<Cat> v; \\Cat is a class
for (int i = 0; i < 5; i++)
{
Cat cat1;
if (someFunction(i))
{
cat1.setName("Whiskers");
v.push_back(whiskers) ;
}
}
我的问题是,在 for 循环中,对象 cat1 在执行0 to 4 时是否超出范围?那就是析构函数会在这里被调用 5 次还是只被调用一次?
【问题讨论】:
-
我猜你可以不用问就在别处找到答案
-
为什么不在构造函数/析构函数中加入一些
cout?实例答案
标签: c++ scope object-lifetime