Что означает такая запись на с++

res += fun_res << (count++ * 3)

Что означает эта запись += понимаю, а дальше не очень


Ответы (2 шт):

Автор решения: Bob Eilmant

Переменная res = переменная res + переменная count + 1 * 3

→ Ссылка
Автор решения: Harry
res += fun_res << (count++ * 3)

Начинаем с конца.

(count++ * 3)

Дает значение count*3, после чего значение переменной count будет увеличено на 1.

fun_res << (count++ * 3)

Значение fun_res побитово сдвигается влево на число бит, равное тому результату умножения на 3, о котором сказано выше.

res += fun_res << (count++ * 3)

К значению res прибавляется результат побитового сдвига, после чего получившаяся сумма опять записывается в res.

Но! все это может быть совсем не так, если это не простые целые числа, а какие-то объекты пользовательских типов... Так что всегда приводите всю информацию - вы же не партизан на допросе...

→ Ссылка