返回右值的 shared_ptr 成员
returning shared_ptr member of an rvalue
在 C++ Concurrency In Action - Practical MultiThreading 第 167 页中,有代码片段
std::shared_ptr<T> wait_and_pop()
{
std::unique_ptr<node> const old_head=wait_pop_head();
return old_head->data;
}
为什么我们必须先将 assign rvalue wait_pop_head()
移动到 const 变量?为什么我们不能 shorthand 下面的代码?
std::shared_ptr<T> wait_and_pop()
{
return wait_pop_head()->data;
}
确实,没有理由不能使用您的替代方案。
临时的会活得够久。
但有些人就是喜欢写出来。
在 C++ Concurrency In Action - Practical MultiThreading 第 167 页中,有代码片段
std::shared_ptr<T> wait_and_pop()
{
std::unique_ptr<node> const old_head=wait_pop_head();
return old_head->data;
}
为什么我们必须先将 assign rvalue wait_pop_head()
移动到 const 变量?为什么我们不能 shorthand 下面的代码?
std::shared_ptr<T> wait_and_pop()
{
return wait_pop_head()->data;
}
确实,没有理由不能使用您的替代方案。
临时的会活得够久。
但有些人就是喜欢写出来。