|
40 / 21 / 3
Регистрация: 27.04.2015
Сообщений: 176
|
|||||||||||||||||||||
Lvalue и rvalue30.06.2016, 13:27. Показов 1563. Ответов 5
Метки нет (Все метки)
Какая выгода использования rvalue? Допустим есть такой класс
0
|
|||||||||||||||||||||
| 30.06.2016, 13:27 | |
|
Ответы с готовыми решениями:
5
Значения Lvalue и Rvalue
C++ expressions - rvalue, glvalue, prvalue, xvalue, lvalue, а также rvalue reference: что есть что? |
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||
| 30.06.2016, 15:36 | ||
|
1
|
||
|
40 / 21 / 3
Регистрация: 27.04.2015
Сообщений: 176
|
||||||
| 30.06.2016, 17:40 [ТС] | ||||||
|
avgoor, а тогда зачем move? можем ли мы просто написать
0
|
||||||
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||||||||||
| 30.06.2016, 19:18 | ||||||||||||
Сообщение было отмечено elch10 как решение
РешениеТеперь, почему он необходим. Если в вашей функции завести еще одну rvalue-ссылку:
Чтоб избежать ошибки нужно явно откастовать к &&, что и делает std::move, т.е.std::string&& ref=(std::string&&)s; и std::string&& ref=std::move(s); - эквивалентны.Какой operator= вызовется?
1
|
||||||||||||
|
99 / 70 / 13
Регистрация: 15.12.2013
Сообщений: 463
|
|||||||||||
| 18.07.2016, 02:53 | |||||||||||
|
elch10,
2) Выражение name - это идентификатор объекта, а любой идентификатор объекта, это lvalue выражение http://rextester.com/BTUZU14864
1
|
|||||||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 18.07.2016, 10:38 | ||
|
копирование - долгая операция. rvalue позволяют "ограбить" (опустошить) объект, захапав все его данные без всякого копирования. то есть исходный объект окажется после этого опустошенным. ну а принимающий объект - с готовенькими данными. ну а поскольку временные объекты все равно не жильцы, то их можно смело опустошать, и экономить на дорогущем копировании. вот таким образом, rvalue работает с временными объектами, и позволяет их грабить.
1
|
||
| 18.07.2016, 10:38 | |
|
Помогаю со студенческими работами здесь
6
RVALUE Ссылка, error: cannot bind non-const lvalue reference of type 'String&' to an rvalue of type 'String'| Rvalue и lvalue ссылки Непонятное поведение rvalue/lvalue
Почему i++ это rvalue, а ++i lvalue? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|