Size: a a a

IT KPI C/С++ ХВ (хорошо, что не UB)

2020 January 14

AP

Alexander Pavlyuchuk in IT KPI C/С++ ХВ (хорошо, что не UB)
меньше шансов сесть на бутылку
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
загугли, почему макросы (хуйня) зло
источник

AP

Alexander Pavlyuchuk in IT KPI C/С++ ХВ (хорошо, что не UB)
GNU/Vsevolod.rs
если смотреть в асм — нету тех 2х (или 3х) команд инита вызова, а сразу код тела, но с фичами скоупа
это более литературный вариант моей версии про сесть на бутылку
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
Bars0_o [SpamBlock]
ведь что то что то подставляется
если у тебя будет какая-то херня в коде, то ты не сможешь продебажить недомакрос в отличии от функции
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
и ещё 10050 неявных на первый взгляд вещей
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
например множественные инкременты/декременты
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
фичи выражений в вызове функций
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
ты это всё теряешь
источник

B[

Bars0_o [SpamBlock] in IT KPI C/С++ ХВ (хорошо, что не UB)
ага, я суть понял
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
а инлайн позволяет делать быстрее + красивее
источник

B[

Bars0_o [SpamBlock] in IT KPI C/С++ ХВ (хорошо, что не UB)
короче, инлайн это макрос на стероидах?
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
Bars0_o [SpamBlock]
ага, я суть понял
вот простой пример: простейший макрос MAX
источник

B[

Bars0_o [SpamBlock] in IT KPI C/С++ ХВ (хорошо, что не UB)
Alex Master
вот простой пример: простейший макрос MAX
я твой видел)
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
Bars0_o [SpamBlock]
я твой видел)
MAX((a), (b)) ((a) > (b) ? (a) : (b))
источник

TS

Till Schneider in IT KPI C/С++ ХВ (хорошо, что не UB)
Alexander Pavlyuchuk
где стикеры про гугл?
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
если в него послать функцию вроде strlen(), то ты будешь считать длинну два раза
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
но при этом у инлайна тоже есть минус - он работает только если тело функции и её вызов находятся в одном файле
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
(но тут кто-то скажет про флаги выше O2 + flto)
источник

B[

Bars0_o [SpamBlock] in IT KPI C/С++ ХВ (хорошо, что не UB)
у меня однофайловик,  пойдет
источник

AM

Alex Master in IT KPI C/С++ ХВ (хорошо, что не UB)
не буду забирать чужой хлебушек
источник