Временно изменить переменную

157
09 июля 2017, 10:56

Приведу пример:

k = i++ +i даст k = 2*i и затем увеличит i.

k = ++i +i увеличит i, затем даст k = 2*i+1.

Мне же нужно положить в k на 1 больше, чем i, но сам i не менять.

Есть ли в c++/c# что-то такое, что было бы короче, чем: k = i + 1? И аналогично с минусом. Или не короче, но без самого знака "1".

Answer 1

Короче чем i + 1 в языках C++ и C# для операции «получить на единицу большее значение» ничего нет.

Но вы легко можете выкатить свою функцию:

int next(int i) { return i + 1; }

и пользоваться ей.

(В C# нету свободных функций, так что вам может быть ещё понадобится using static.)

Заметьте, что next(i) никак не короче, чем i+1: одни только скобки добавляют два символа, а ещё имя функции должно содержать как минимум один символ.

Кстати, в Паскале нужная вам функция есть: Succ.

READ ALSO
Блокировка сетевых портов

Блокировка сетевых портов

Хочу написать програмулину чтобы блокировала все сетевые порты:) этак вирус для начальникаПусть сидит на одном ftp и без танчиков

213
Убрать проверку путей в реестре

Убрать проверку путей в реестре

Подскажите как сделать проверку без использовать Key != null ?

178
Авторизация на сайте через mail.ru

Авторизация на сайте через mail.ru

Доброго времени суток!

405
Как сделать прогресс бар для Ajax запроса?

Как сделать прогресс бар для Ajax запроса?

Как сделать прогресс бар для Ajax-запроса? Не gif-изображение, а именно отслеживать загрузку страницы, которая загружается через Ajax-запрос

302