Юрий Грибов - Как правильно писать компараторы

Поділитися
Вставка
  • Опубліковано 20 вер 2024
  • Подробнее о конференции C++ Russia: jrg.su/W8skjE
    - -
    Один из малоизвестных примеров undefined behavior в C/C++ это нарушение требований к функциям сравнения (компараторам). Компараторы широко используются в алгоритмах (std::sort, std::binary_search, и т.д.) и контейнерах (std::set, std::map) и встречаются как в C++, так и в C (qsort, bsearch). Компараторы должны удовлетворять некоторым аксиомам, которые в математике описываются понятием строгого слабого порядка (strict weak ordering). Эти аксиомы не интуитивны и в них легко ошибиться, о чем свидетельствует большое количество соответствующих багов в open source проектах. Современные тулчейны предоставляют средства для отслеживания таких ошибок. О них рассказано в докладе Юрия.
    Скачать презентацию с сайта С++ Russia - jrg.su/ZakowR

КОМЕНТАРІ • 8

  • @asc7uni
    @asc7uni 4 місяці тому +4

    Очень хороший и понятный доклад. Спасибо

  • @dennismattuer2610
    @dennismattuer2610 3 місяці тому +1

    хороший доклад!! Мелочи - наше все и пока неистребимо

  • @ybereza
    @ybereza 4 місяці тому +2

    Казалось бы простая тема, но как обычно - легко допустить ошибку. Спасибо за доклад :)

  • @TheUV58
    @TheUV58 4 місяці тому +2

    прекрасный доклад

  • @SmoukingMouse
    @SmoukingMouse 4 місяці тому +2

    Спасибо за доклад!

  • @antonchilchegov
    @antonchilchegov 3 місяці тому +1

    Как сравнивать числа с погрешностью? Не делайте так! Красава

    • @yugr
      @yugr 2 місяці тому

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

  • @Mister-Jesus
    @Mister-Jesus 4 місяці тому +3

    Извините, но по факту ни о чем