Форум программистов, компьютерный форум CyberForum.ru

Почему i++ это rvalue, а ++i lvalue? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ fatal error C1076: compiler limit http://www.cyberforum.ru/cpp-beginners/thread804527.html
fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit Здравствуйте, что это такое и как с этим бороться, у меня программа соглашается компилироваться только при /Zm1450, гдето прочитал что максимальное значение может быть 2000, я боюсь что скоро программа не будет компилириваться ни при 1450 ни при 2000, как сделать чтобы компилятору требовалось...
C++ Считывание из файла Здравствуйте! Такой вопрос. Как можно считать информацию из файла следующим образом: в текстовом файле имеется 3 столбца, мне же нужно считывать данные в массив только с первого столбца. Понимаю, что должно быть какое-то условие на то, что если встречается пробел, переходить на следующую строчку, но не могу понять, что за функцию вообще использовать. Спасибо! Добавлено через 6 минут Данные,... http://www.cyberforum.ru/cpp-beginners/thread804521.html
C++ Функция компаратор
зачем она нужна, как её курить, желательно с примерами
C++ Исправить оишбку в коде
Код: #include <stdio.h> #include <iostream> #include <string> class Unit { public: Unit(const char* name, int hitpoints, int damage) : hitpoints_(hitpoints), damage_(damage) {
C++ Задача Четыре чертёнка http://www.cyberforum.ru/cpp-beginners/thread804489.html
Мир в опасности. Один известный мошенник по имени Остап умер, и, попав в ад, решил заключить сделку с дьяволом. Игра простая: четыре чертёнка делятся на две команды — «чёрные» и «чумазые» — и выходят на игровое поле. На игровом поле написаны в ряд числа от 1 до n, и игроки начинают по очереди ставить между ними чёрными чернилами знаки + или −. Задача «чёрных» — сделать так, чтобы после...
C++ проблемы с сортировкой пузырьком собственно сабж проблема заключается в том, что программа сортирует ЧАСТЬ массива. Допустим, надо отсортировать каждый столбец по уменьшению значения суммы цифр каждого элемента. Так программа правильно отсортировывает 14 элементов из 16, а 2 стоят в неправильном порядке. Не могу понять, наверное где-то в цикле ошибка. Помогите, люди! // moiproject.cpp: определяет точку входа для консольного... подробнее

Показать сообщение отдельно
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
10.03.2013, 13:12     Почему i++ это rvalue, а ++i lvalue?
Цитата Сообщение от mzarb Посмотреть сообщение
Встречал упоминания что для постинкремента создается временная копия, но дальше не объясняется. Получается, что переменной с преинкрементом можно присвоить значение, потому как возвращается её адрес, а для постинкремента адрес временной копии?
Примерно так. Дело именно в том, что копия временная, существует только на время вычисления утверждения, содержащего постинкремент, и не является полноценным объектом (у неё нет имени; к ней нельзя обратиться в другой части утверждения, только непосредственно как к результату постинкремента, но не самостоятельному значению). Тогда как переменная, которую увеличивает преинкремент, таким объектом является. В этом и разница между rvalue и lvalue и причина, по которой результат постинкремента получает характеристику rvalue.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru