相关疑难解决方法(0)

C++临时变量生命周期

这段代码有效吗?

int foo()
{
    std::vector<std::string>& v = std::vector<std::string>(5, "X");

    // Do something silly...

    return 42;
}
Run Code Online (Sandbox Code Playgroud)

出于某种原因,我认为临时std::vector对象(从赋值标记开始)应该在构造之后被破坏(从而使引用无效).

然而,调试证明我错了,而且,我意识到我不太明白为什么在函数返回时会破坏临时变量.


我想我对一些基本的东西有很强的误解,所以请赐教:)

c++ variables construction lifetime visual-studio

5
推荐指数
1
解决办法
847
查看次数

标签 统计

c++ ×1

construction ×1

lifetime ×1

variables ×1

visual-studio ×1