簡體   English   中英

返回右值的shared_ptr成員

[英]returning shared_ptr member of an rvalue

在《 C ++並發操作中的實用多線程》第167頁中,有代碼片段

 std::shared_ptr<T> wait_and_pop()
 {
     std::unique_ptr<node> const old_head=wait_pop_head();
     return old_head->data;
 }

為什么我們必須首先將賦值右值wait_pop_head()移至const變量? 為什么我們不能簡寫下面的代碼?

std::shared_ptr<T> wait_and_pop()
{
    return wait_pop_head()->data;
}

確實,沒有理由不能使用您的替代方案。

該臨時文件將生存足夠長的時間。

但是有些人只喜歡寫出來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM