1. Си / Говнокод #18744

    −96

    1. 1
    2. 2
    /* For C++ compliance - cannot use "this" keyword */
    #define this this_

    Где-то в недрах какого-то цисковского проекта. Что только не встретишь в этом странном мире.

    Запостил: gorthauer87, 21 Сентября 2015

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

    • that, me, self, myself -- им что, мало?
      Ответить
    • Интересно, а заголовки функций и вызовы там тоже задефайнены под явную передачу this?
      Ответить
      • Я пока ещё не разбирался. У меня при виде такого возникает единственное желание: валить из этой конторы нафиг.
        Ответить
        • А, кажется понял. У них был сишный код, в котором юзались переменные с именем this. Чуваки попытались собрать плюсовым компилятором - а он ругается. Ну и придумали этот хак, чтобы код не править...
          Ответить
          • > чтобы код не править...
            Да, ведь find replace ещё не изобрели.
            Ответить
            • А если еще вспомнить о возможностях рефакторинга в IDE
              Ответить
    • кажется, #undef this было бы достаточно
      Ответить

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