Свързани въпроси 'rvalue'

Защо е позволено T() = T()?
Вярвам, че изразът T() създава rvalue (по стандарта). Следният код обаче се компилира (поне на gcc4.0): class T {}; int main() { T() = T(); } Знам, че технически това е възможно, защото функциите-членове могат да бъдат извикани на...
726 изгледи

Необходимо ли е да има временен или литерал, за да има rvalue?
Този въпрос пита дали всички временни елементи са rvalue. Отговорът е не, защото ако разгледаме този израз: const int &ri = 2 + 3; след това същият временен (2 + 3) , който тук е rvalue, може да се използва като lvalue в следващ...
193 изгледи
schedule 23.11.2022

Валидно ли е да се обвържат неконстантни lvalue-препратки към rvalues ​​в C++ 11? (модифицирано)
Знам, че в c++03 неконстантна препратка не може да бъде обвързана с rvalues. T& t = getT(); е невалиден и в c++11 можем да направим това: T&& t = getT(); но какво да кажем за горния код, трябва ли да работи в c++11? Тествах...
1731 изгледи
schedule 09.11.2022

Какъв е обхватът на литерална стойност и как компилаторът разпределя памет за нея?
int x = 12; Казва се, че 12 е цял литерал и следователно не може да се използва в LValue. Как компилаторът разпределя памет за литерали? Какъв е обхватът на литералите? Защо не можем да получим адреса му с &12 в неговия обхват?
326 изгледи
schedule 21.04.2024