Вопросы с тегом 'rvalue'

rvalue является временным объектом (или подобъектом) или является значением, напрямую не связанным с объектом.
2
ответа

Почему результат «decltype (i + j)» не является ссылкой на rvalue?

Я пытаюсь привести простой пример для операции, которая приводит к rvalue. Этот тестовый пример должен был работать, но на удивление (для меня) результатом добавления двух int s является не rvalue (reference). Что мне здесь не хватает?...
задан 21.04.2016 в 09:36
1
ответ

Как можно назначить возвращаемый объект?

В Эффективном C ++, пункт 3, Скотт Мейерс предлагает перегрузить operator* для класса с именем Rational : class Rational { ... }; const Rational operator*(const Rational& lhs, const Rational& rhs); Причина для возвращ...
задан 12.01.2012 в 09:55
6
ответов

, принимающий адрес временного объекта

§5.3.1 Унарные операторы, раздел 3    Результат унарного & amp; оператор является указателем на его операнд. Операнд должен быть lvalue или квалифицированным идентификатором. Что именно означает «должно быть» в этом контексте? Означает...
задан 17.02.2010 в 13:51
1
ответ

Является ли законным перемещать член .str () строкового потока?

Рассмотрим следующий пример: #include <sstream> template <typename T> inline std::string to_string(T const & op) { std::ostringstream result; result << op; return result.str(); } Если бы я должен был верн...
задан 01.03.2016 в 16:25
3
ответа

C ++ диапазон для цикла по valarray rvalue не работает

Я хотел бы перебирать временную valarray, но она не работает. Вот мой (нерабочий) код: #include <iostream> #include <valarray> int main() { using namespace std; valarray<int> numerators = {99, 26, 25};...
задан 28.01.2016 в 17:39
3
ответа

Ссылка Rvalue обрабатывается как Lvalue?

Я отправил этот ответ: Ссылка , которая содержит следующий код: void foo(string&& bar){ string* temp = &bar; cout << *temp << " @:" << temp << endl; } Является ли bar значением r или lvalue...
задан 12.02.2015 в 17:54
1
ответ

Почему std :: forward возвращает static_castT &&, а не static_castT?

Возьмем функцию Y, которая перегружает: void Y(int& lvalue) { cout << "lvalue!" << endl; } void Y(int&& rvalue) { cout << "rvalue!" << endl; } Теперь давайте определим функцию шаблона, которая действуе...
задан 07.07.2016 в 19:23
5
ответов

Правильный способ возврата ссылки rvalue на этот

В приведенном ниже коде содержится Неопределенное поведение . Обязательно прочитайте ВСЕ ответы для полноты. При привязке объекта через operator<< я хочу сохранить lvalue-ness / rvalue-ness объекта: class Avenger { public:...
задан 26.05.2014 в 18:36
5
ответов

Какой синтаксический сахар доступен в Perl для уменьшения кода для операторов l / rvalue против операторов if?

Там есть куча, так как Perl - довольно сладкий язык, но наиболее часто используемые операторы на любом языке представляют собой комбинацию операторов if и значений параметров. Я думаю, что нашел многих из них, но все еще есть несколько пробелов....
задан 17.10.2011 в 18:08
1
ответ

Какова категория значений операндов операторов C ++ при неопределенной?

ПОМЕЩЕНИЕ: Стандарт C ++ 11 классифицирует выражения в три непересекающиеся категории значения : lvalues ​​, xvalues ​​ и prvalues ​​ (§ 3.10 / 1). Объяснение того, какие категории значений доступны, например здесь . Я изо всех си...
задан 20.02.2013 в 23:33