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

    +8

    1. 1
    2. 2
    const
    #include "file.xpm"

    У чувака в файле file.xpm объявлен массив static char * icon_xpm [] = { "..", "..", ... } и он не может заинклудить его в плюсовый код. Вот такой воркараунд ему предложили.
    https://www.linux.org.ru/forum/development/10400992?cid=10406949

    Запостил: kurwa-nextgen, 27 Июля 2016

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

    • и блин ни один не предложил классического решения:
      #define static static const
      #include "cykablyat.xpm"
      #undef static

      под рукой препроцессор, какой бы убогий он не был но препроцессор, и их главная работа это сырцы редактировать. а они sed'ы и awk'а...
      Ответить
    • А написать const внутри файла - не вариант?
      Ответить
      • как и в треде написано: это такой извратный формат файла, и по стандарту там const нельзя.

        или другими словами: `static char *...` это бинарный opaque заголовок файла :)
        Ответить
        • Ну тогда остаётся тупо заинклудить все эти xmp'ки в чисто сишный файл и экспортнуть оттуда...
          Ответить
        • З.Ы. А ведь в XPM файл можно воткнуть произвольный код, для любителей вкомпиливать всякое говно себе в программу...
          Ответить

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