Size: a a a

2020 September 04

🦊

🦊fox.cpp in C++ Together 2.0
Присвавание тут, однако, как частный случай
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
Имеет.
Короче, говно в присвоении?
источник

A

Alex Ф-ф-фэils!🌠︙... in C++ Together 2.0
Cool Cooler
А другие компилеры?
Ub, значит, надо смотреть в их кот
источник

CC

Cool Cooler in C++ Together 2.0
Cool Cooler
b = (a -= 32) + (a - 1)
это UB?
А знаете, что самое странное

То, что я узнал это на паре по программированию
Никогда бы не подумал, что смогу в универе узнать что-то новое для себя по теме
источник

A

Alex Ф-ф-фэils!🌠︙... in C++ Together 2.0
Roy Mustang
Типа если сделал так `int a = 3 - 2", то нет гарантии что не получишь 2 - 3?
Есть, тут все просто, сайд эффектов нету
источник

CC

Chris Calvin in C++ Together 2.0
@r_mustang, ты тратишь основную часть своего времени на продумывание архитектуры aka сделать все пиздато в твоем понимании. Насколько я вижу, твоя главная проблема заключается в необразованности(не в глупости, нет), а в необразованности - недостатке понимания общепринятой терминологии и общеизвестных принципов разработки крупных систем. Неудивительно что тебя обсирают, ведь ты не можешь оценить сложность(количество времени необходимого на разработку функционала), нюансы и особенности решаемых тобою масштабных задач. Если бы ты уделил некоторое количество времени на изучение ОШИБОК которые делали люди разрабатывающие подобные приложения до тебя(Читать: Изучил литературу по проектированию ПО), ты бы избежал тонны хейта, высказывал бы свою точку зрения в понятных всем терминах и смог более четко оценивать свои силы и в значительной мере сократить количество возможных "архитектурных" решений, между которых наверняка окажется наиболее эффективный.
источник

RM

Roy Mustang in C++ Together 2.0
Chris Calvin
@r_mustang, ты тратишь основную часть своего времени на продумывание архитектуры aka сделать все пиздато в твоем понимании. Насколько я вижу, твоя главная проблема заключается в необразованности(не в глупости, нет), а в необразованности - недостатке понимания общепринятой терминологии и общеизвестных принципов разработки крупных систем. Неудивительно что тебя обсирают, ведь ты не можешь оценить сложность(количество времени необходимого на разработку функционала), нюансы и особенности решаемых тобою масштабных задач. Если бы ты уделил некоторое количество времени на изучение ОШИБОК которые делали люди разрабатывающие подобные приложения до тебя(Читать: Изучил литературу по проектированию ПО), ты бы избежал тонны хейта, высказывал бы свою точку зрения в понятных всем терминах и смог более четко оценивать свои силы и в значительной мере сократить количество возможных "архитектурных" решений, между которых наверняка окажется наиболее эффективный.
Согласен, но я был бы не я, если бы слушал всех подряд
источник

RM

Roy Mustang in C++ Together 2.0
Я не говорю, что мне хуйню советуют, наоборот, просто не всегда хочется делать иначе, хуль с меня взять
источник

CC

Chris Calvin in C++ Together 2.0
Ты не хочешь сделать качественный продукт?
источник

🦊

🦊fox.cpp in C++ Together 2.0
Roy Mustang
Короче, говно в присвоении?
В общем случае, стандарт не гарантирует порядок вычисления подвыражений в сложных конструкциях. Это вызывает проблемы, если одно подвыражение читает стейт, а другое его изменяет.
источник

🦊

🦊fox.cpp in C++ Together 2.0
a = 3
b = (a = 2) + a


вот ещё такой более простой пример
источник

🦊

🦊fox.cpp in C++ Together 2.0
стейт тут - переменная a
источник

🦊

🦊fox.cpp in C++ Together 2.0
Хотя, стой, говно пример)
источник

🦊

🦊fox.cpp in C++ Together 2.0
Да, как у котопса надо.
источник

🦊

🦊fox.cpp in C++ Together 2.0
b = (a -= 32) + (a - 1)
это UB?
источник

CC

Cool Cooler in C++ Together 2.0
🦊fox.cpp
Хотя, стой, говно пример)
Почему? Норм
b будет == 4 или 5
источник

🦊

🦊fox.cpp in C++ Together 2.0
Ммм, недосып - штука страшная.
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
В общем случае, стандарт не гарантирует порядок вычисления подвыражений в сложных конструкциях. Это вызывает проблемы, если одно подвыражение читает стейт, а другое его изменяет.
эмм, думаю что компилятор не идиот
источник

🦊

🦊fox.cpp in C++ Together 2.0
Поэтому я пойду восстанавливать утерянные часы сна, ночи всем.
источник

RM

Roy Mustang in C++ Together 2.0
Щас проверю даже
источник