簡體   English   中英

是否有一個rvalue,我可以直接取一個地址?

[英]Is there an rvalue that I can directly take an address of?

我可以通過綁定到引用來獲取rvalue的地址(據我所知,它本身只能通過左值引用)。

有沒有辦法得到rvalue我可以直接取一個地址(即像&(<rvalue>)將是一個有效的表達式,而不重寫operator&() )?

或者這可能至少可以通過“綁定”到另一個右值來實現? (這似乎不是這種情況,因為我們只能'綁定'到左值的引用,見上文。但也許我在這里缺少一些類似的概念。)

我試圖回答的更普遍的問題是以下是否正確:rvalues嚴格對應於一組表達式,人們可以直接獲取地址,除了左值位域和其他一些這樣的“特殊”左值。

[expr.prim.id.qual]

一個表示類的嵌套名稱說明符 ,可選地后跟關鍵字template ([temp.names]),然后是該類([class.mem])或其基類之一的成員名稱課程,是一個合格的身份 ; [class.qual]描述了出現在qualified-ids中的類成員的名稱查找。 結果是成員。 結果的類型是成員的類型。 如果成員是靜態成員函數或數據成員,則結果是左值,否則為prvalue。

也就是說,為非靜態成員函數創建指向成員的指針是將&運算符應用於prvalue。

暫無
暫無

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

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