|
techpriest
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180
|
|||||||||||
Xvalue и prvalue05.12.2015, 14:22. Показов 2896. Ответов 25
Метки нет (Все метки)
А в чем, собственно, разница?
И вообще, есть какая-то разница между следующими функциями:
Спасибо. Добавлено через 12 минут Хм... И вообще, int&& func(); у меня всегда ноль вроде как возвращает. Что-то я где-то не разумею 0_о...
0
|
|||||||||||
| 05.12.2015, 14:22 | |
|
Ответы с готовыми решениями:
25
Rvalue, lvalue, xvalue, prvalue, glvalue
Что же это такое glvalue, xvalue, prvalue |
|
techpriest
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180
|
|
| 05.12.2015, 19:39 [ТС] | |
|
А, это так... глупость...
Попытка заставить локальный объект жить вне области видимости создавшей ее функции чуть дольше, чем до ближайшего ";". Некромантия, в общем. Вряд ли это вообще возможно.
0
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|||||||
| 05.12.2015, 19:41 | |||||||
|
Я Вам показал взятие адреса функции, попытка чего была в 1-м посте. Имя функции - это и будет адресом функции. Зачем еще что-то для этого придумывать. Добавлено через 1 минуту
0
|
|||||||
|
techpriest
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180
|
|
| 05.12.2015, 19:45 [ТС] | |
|
Так вот я и говорю, не договорились. Я то хотел адрес того объекта, который якобы имеет identity по терминологии cppreference. Короче, указатель на этот объект...
Добавлено через 1 минуту В общем-то я даже не хотел его получить. Я просто таким способом проверил, правильно ли я понял то, что там написано.
0
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
||
| 05.12.2015, 21:13 | ||
|
Если я правильно понял, то та проверка правильности понимания - это такая своеобразная попытка забрать адрес объекта непосредственно внутри return, избегая всю работу функции. Попытка своеобразного goto, игнорирующего весь кусок блока кода функции.
Я могу сказать только то, что попытки взятия такого адреса ничего не дадут. Как можно взять адрес у уже уничтоженного объекта? Ответ - никак. Нельзя взять адрес у того, чего нет. Функция вычислила выражение и переместила его. А такая попытка - это попытка взятия того адреса, откуда уже произошло перемещение. "Там уже разруха и хаос". В стандарте ни о каких identity у xvalue не писано. 3.10 Lvalues and rvalues
________________________________________ _____________ Если я ошибся, то пусть поправят. Я мог неправильно написать.| ________________________________________ _____________|
0
|
||
|
techpriest
634 / 213 / 57
Регистрация: 27.02.2014
Сообщений: 1,180
|
|
| 05.12.2015, 22:51 [ТС] | |
|
daslex
Ну, отчасти да... Впрочем, как вы понимаете, к моменту, когда я это писал, я только прощупывал почву и подобных тонкостей не понимал. Интересно то, что адрес, вообще говоря, возвращается в любом случае (напоминаю, возврат ссылок (по умолчанию) производится путём возврата адреса). И его хитрыми средствами всегда можно получить и посмотреть, где этот самый объект лежит или лежал до недавнего времени. Будет ли это адрес на существующий объект или нет зависит только от того, в вызывающей, или же в вызываемой функции создан этот объект. Так что адрес уничтоженного объекта получить можно. P.S. Я стандарт не читал... я все больше сайт cppreference смотрю. Простите.
0
|
|
|
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
|
|
| 22.04.2018, 00:42 | |
|
0
|
|
| 22.04.2018, 00:42 | |
|
C++ expressions - rvalue, glvalue, prvalue, xvalue, lvalue, а также rvalue reference: что есть что?
[xvalue][msvs/gcc][bug] member function with ref-qualifier Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него.
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952
Инструкция внутри.
Сразу отвечу: А в PvP с ним. . .
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|