1. C++ / Говнокод #24033

    0

    1. 1
    https://twitter.com/jfbastien/status/979091653146193920

    > 39 лойсов
    > 13 ретвитов
    Тьфу блять, хуже жаваскриптеров это крестушиное комьюнити.

    Запостил: subaru, 30 Марта 2018

    Комментарии (7) RSS

    • Глубже...
      Ответить
    • я не очень уловил что пытается чудак сделать.
      Ответить
      • а, дошло. это просто изврат: не хочу тут хидер включать, поэтому напложу тучи новой фигни - но потом в конце все равно придется хидер включать. forward declarations для фигни из внешних хедеров - evil. прикручивание оберток к этим декларациям - evil в квадрате.
        Ответить
        • Да эти forward декларации почти никогда не нужны (кроме циклических зависимостей, которые сами по себе говно) -- PCH всё стерпит.
          Ответить
          • > Да эти forward декларации почти никогда не нужны

            Ну в теории смысл от них есть, только не стоит писать их самому для внешних библиотек. Нормальная библиотека должна иметь собственные хедеры с forward-declarations, если это имеет смысл.

            Авторы стандартной библиотеки же дали нам пример: <iosfwd>. Чтобы мегабайты <iostream> не инклюдить ради несчастного объявления operator<<()
            Ответить
            • > если это имеет смысл
              Ради пирфоманса, имхо, не имеет. Один инклуд чего-нибудь из буста — и вся эта преждевременная оптимизация будет смыта потоком говна.

              Вот скрытие структуры для pimpl или сишненькой инкапсуляции — вроде годный юзкейс для forward declaration.
              Ответить
          • То ли дело ObjC+Swift (в смысле, нужны они там)
            Ответить

    Добавить комментарий