Заменяем лишние if-проверки на assert для инвариантов кода в C/C++
Многие разработчики привыкли везде ставить if-проверки, даже для условий, гарантированных кодом. Зачем проверять то, что не может нарушиться? Такие проверки создают шум в коде и мусор в релизе. Assert решает эту проблему: документирует допущения и исчезает из финальной сборки. В статье покажу все преимущества assert'ов и предостерегу от подводных камней их использования.
https://habr.com/ru/articles/962668/
#C++ #C #assert #инварианты #ifelse #NDEBUG #Design_by_Contract #код_как_документация
