Современный C++: новые возможности и лучшие методологии (лекция 2)

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 ก.พ. 2025
  • Лекция Валерия Лесина (SimLabs, СПбАУ РАН) в Лектории CS центра (compscicenter.....
    Аннотация: в этой части рассказано о нововведениях в языке C++. В основном, о встроенных возможностях каррирования и замыкания функций, что делает крайне удобным выполнение обратных вызовов (callbacks). Героями этой части стали bind, function и примкнувшие к ним lamda-функции из стандарта C++11/14. Упомянуты некоторые небольшие, но особенно полезные возможности нового C++ (от простых, вроде delegating constructors, до более продвинутых, как, например, использование шаблонного typedef для идиомы SFINAE).

ความคิดเห็น • 3

  • @YanPashkovsky
    @YanPashkovsky 8 ปีที่แล้ว +1

    плейсхоледры в одном неймпспейсе лежат (std::placeholders) да и для виртуальных функций бинд на гцц 5.4 отлично работает

  • @ivanaaa6049
    @ivanaaa6049 6 ปีที่แล้ว +2

    Bind морально устарел. Используйте лямбда- выражения, которые более функциональны. У Скотта Майерса в "Эффективный С++" целый параграф посвящен преимуществам лямбда- выражений над биндами. К тому же в bind не удастся переместить объект.

  • @МаксТрефа
    @МаксТрефа 6 ปีที่แล้ว

    void set_timer(ITimerHandler* handler) для "сущ. классов" - а в чем проблема создать класс Hundler, который отнаследован от ITimerHandler, имеет поле с сущ классом и по вызову update обновляет объект сущ класса?