en
Feedback
DariaEmacs

DariaEmacs

Open in Telegram
489
Subscribers
No data24 hours
No data7 days
No data30 days
Posts Archive
Что выведет программа?
Что выведет программа?

Что выведет программа?
Anonymous voting

Что выведет программа? (пробуем викторину ниже)
Что выведет программа? (пробуем викторину ниже)

photo content

Сегодня разбираем сложный вопрос: decltype. ⁉️Что выведет эта программа?
Сегодня разбираем сложный вопрос: decltype. ⁉️Что выведет эта программа?

Старая шутка, но всё равно актуальная.
Старая шутка, но всё равно актуальная.

Поделитесь, пожалуйста, какая тема Вас более всего интересует?
Anonymous voting

В продолжение вчерашнего поста и обсуждений, что на каждую старуху найдется своя проруха)), вопрос тот же, только задание чут
В продолжение вчерашнего поста и обсуждений, что на каждую старуху найдется своя проруха)), вопрос тот же, только задание чуть сложнее: что выведет программа?

Легкий вопрос для того, чтобы взбодриться перед собеседованием)). Что выведет программа?
Легкий вопрос для того, чтобы взбодриться перед собеседованием)). Что выведет программа?

Задело за живое 😅
Задело за живое 😅

Подробнее о применении std::exchange можно посмотреть в выступлении Бена Дина на CppCom: https://www.youtube.com/watch?v=OqJUBIJOojI&ab_channel=CppCon

Где её можно применить? Ну, например, там, где нужен swap и присваивание.
Где её можно применить? Ну, например, там, где нужен swap и присваивание.

На мой взгляд, что за значения и где окажутся, запомнить уже проще со стрелочками.
На мой взгляд, что за значения и где окажутся, запомнить уже проще со стрелочками.

photo content

Но не думайте, пожалуйста, что она присваивает эти значения в том порядке, в котором я нарисовала. Всё происходит почти как при реализации постфиксного инкремента (i++). Сначала сохраняем старое значение b, а затем присваиваем ему значение с, а затем возвращаем старое значение b и уже меняем a.

photo content

📚Изучаем STL Сегодня это утилита std::exchange(b, c); Название у неё не совсем соответствует действительности. Ведь, можно было бы подумать, что exchange — менять, обменивает два параметра своими значениями. Но что тогда делает std::swap? В общем легко запутаться. Вот, как просто запомнить, что делает эта функция.