簡體   English   中英

C ++:左值要求為一元'&'操作數

[英]C++ : lvalue required as unary ‘&’ operand

下面的代碼在我的工作系統中工作,同一代碼在我的PC中引發錯誤。

std::bitset<32> my_bit(*(uint32_t*)&(OFDM_cod[V][a/8].real()));

Error:
lvalue required as unary ‘&’ operand

有什么建議為什么會這樣嗎? 提前致謝!

您不能輸入臨時地址,這就是

&(OFDM_cod[V][a/8].real()));

是在做。 可以簡化為

&x.real(); //here assuming real() does not return a reference

這不好。 您的代碼可能在不符合標准的編譯器中工作,對此事情放松了-但此行為違反了C ++標准。

暫無
暫無

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

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