这个方法是否能正常工作?(参见示例)
unique_ptr<A> source()
{
return unique_ptr<A>(new A);
}
void doSomething(A &a)
{
// ...
}
void test()
{
doSomething(*source().get()); // unsafe?
// When does the returned unique_ptr go out of scope?
}
source
2. 调用get
3. 解引用 4. 调用doSomething
5. 销毁临时的unique_ptr
。 - fredoverflow