|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
rvalue ссылки17.12.2019, 11:36. Показов 8532. Ответов 93
Метки нет (Все метки)
1
|
|
| 17.12.2019, 11:36 | |
|
Ответы с готовыми решениями:
93
Зачем нужны rvalue ссылки, если есть универсальные ссылки Ссылки от rvalue
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 17.12.2019, 16:56 [ТС] | |
|
_stanislav, сейчас нету особо времени читать) вечером почитай, я хочу для начала еще разобратсья с auto_ptr
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 17.12.2019, 19:33 | |
|
Уточню один момент: там в комментарии я написал что move вернёт string&&, но до конца не уточнил почему это приводит к вызову конструктора перемещения. Тип выражения std::move(object) - xvalue. данный тип выражения включает в себя свойства rvalue выражения. Результат rvalue можно привязать к rvalue ссылке (тогда и xvalue можно хотя бы потому что оно включает в себя свойства rvalue).
Понимаю что скорее всего я сейчас усложнил вам задачу, но это объяснение точнее предыдущего.
1
|
|
|
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
|
|
| 17.12.2019, 19:55 | |
|
Undisputed, я думаю, это будет проще понять человеку, если он сначала разберется в чисто бытовой потребности во всем этом. Поэтому и предложил на примере auto_ptr прочувствовать задачу.
1
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 17.12.2019, 20:08 | ||
![]() А последнее сообщение было лишь уточнением на будущее как для ТС, так и для других возможных читателей )
1
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 18.12.2019, 00:09 [ТС] | |
|
Undisputed, не сказал бы, мне, лично, строку тяжелее воспринимать т.к. я давно не использую тип sring и когда его использовал то не разобрался с тем как он устроен, вместо string'а использую либо char * либо аналог чужой аналог string'a, но вряд-ли Вы о нем слышали, так что удобнее было бы с какими-то более понятными типами, к примеру int
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|
| 18.12.2019, 01:16 | |
|
0
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 18.12.2019, 10:08 [ТС] | |
|
hoggy, не могу, код с работы, извини)
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||
| 18.12.2019, 10:21 | |||
|
Добавлено через 2 минуты std::string это довольно примитивный класс, как-то надо представлять как он работает
0
|
|||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 18.12.2019, 10:51 [ТС] | |
|
oleg-m1973, ну я представляю как он работает т.к. каждый день работаю с его аналогом) просто если именно string в примерах используется то значит в нем есть что-то особенное о чем я не знаю, вот и всё, насчёт auto_ptr мне самому стало интересно, да и сам класс не такой большой чтобы на него было жаль время тратить
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 18.12.2019, 10:58 | ||
|
0
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
||||||
| 18.12.2019, 11:26 [ТС] | ||||||
|
DrOffset, Здравствуйте, я вот разбираюсь с auto_ptr и не могу понять что мне должно быть не понятно? Можете дать подсказку в какую сторону смотреть
? Пока что все более чем очевидноДобавлено через 7 минут вот код если что Кликните здесь для просмотра всего текста
0
|
||||||
|
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
|
||||||||||||
| 18.12.2019, 11:35 | ||||||||||||
Потом возьмите вот такой код (и снова ответьте на вопросы):
Дальше будут следующие вопросы (открывать только после ответа на предыдущие): Кликните здесь для просмотра всего текста
Какие недостатки у первого кода? Почему конструктор копирования имеет такую сигнатуру? Почему в двух случаях срабатывают разные конструкторы? Почему нельзя использовать один и тот же конструктор для этого? Зачем нужен auto_ptr_ref?
2
|
||||||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|||
| 18.12.2019, 11:49 [ТС] | |||
|
DrOffset,
Добавлено через 6 минут
0
|
|||
|
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
|
|||
| 18.12.2019, 12:02 | |||
|
Ладно. Почему конструктор копирования (который есть у auto_ptr) не подходит в этом случае?
0
|
|||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 18.12.2019, 12:17 | |||||||
|
и не просто подходит, а именно что запускается, успешно отрабатывает, и проблем никаких.
тебя смущает, что rvalue не сможет забиндиться на lvalue_reference?
0
|
|||||||
|
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
|
|||||||||
| 18.12.2019, 12:31 | |||||||||
![]() Добавлено через 7 минут Не по теме:
Я человеку даю информацию порционно, с возможность подумать и сделать выводы. И если я сразу чего-то не говорю, то это специально, в образовательных целях. Я уверен, что если человеку просто все показать на пальцах, то он через два дня об этом забудет. Тут на форуме полно примеров таких. Когда ты объясняешь, тратишь время на пост-статью, а через месяц у него тот же вопрос (возможно немного с другой стороны поставленный). Это значит человек суть не понял нифига, а просто запомнил факты. Как только входные условия меняют, у него опять паттерн ломается и он опять ничего не знает.
0
|
|||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
||
| 18.12.2019, 12:36 [ТС] | ||
|
DrOffset, у меня срабатывает конструктор после оператора ,другое дело что я не пойму почему вызывается оператор это первое, второе что студия не дает во время дебагинга даже поставить брейкпоинт на оператор auto_ptr , а попытки его вызвать ничего не дают
Добавлено через 3 минуты DrOffset,
0
|
||
|
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
|
||||
| 18.12.2019, 12:38 | ||||
|
https://docs.microsoft.com/ru-... ew=vs-2019 Иначе у вас выстроится искаженная картина происходящего.
0
|
||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 18.12.2019, 12:40 [ТС] | |
|
DrOffset, насколько я понял то func возвращает rvalue? а конструктор принимает на вход lvalue?
0
|
|
|
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
|
||
| 18.12.2019, 12:41 | ||
|
0
|
||
| 18.12.2019, 12:41 | |
|
Rvalue и lvalue ссылки
Запретить initializer-list конструктору принимать rvalue значения/ссылки
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|