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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    bool MyClass::operator==(int elem){
        if (list.isExist(elem)){
            list.remove(elem);
            return true; // Операция завершена успешно
        }
        return false; // Элемент elem не найден в списке
    }

    (C) https://www.linux.org.ru/forum/development/14063699?cid=14063991

    Вырвано из контекста (треда), но считаю данная кучка должна лежать здесь.

    Запостил: Elvenfighter, 05 Марта 2018

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

    • operator <=>

      https://stackoverflow.com/questions/47466358/what-is-the-operator-in-c/47466459#47466459
      Ответить
      • В рот мне ноги! Ебааа!
        Ответить
      • Operator spaceship.

        Между прочим, в Perl уже давно бояном стало: http://search.cpan.org/dist/perlsecret/lib/perlsecret.pod
        Ответить
        • Это чуть ли не первый опер с которым знайомишься, когда учишь перл
          Ответить
    • bool MyClass::operator!=(int elem){
          if (!list.isExist(elem)){
              list.add(elem);
              return true; // Операция завершена успешно
          }
          return false; // Элемент elem найден в списке
      }
      Ответить
      • Слишком предсказуемо. Я бы сделал так:
        bool MyClass::operator!=(int elem){
          list.erase(
            std::remove_if(list.begin(), list.end(), [elem](int e) { return e != elem; }),
            list.end()
          );
        
          return !list.empty(); // Если хоть что-то осталось -- то этот элемент
        }
        Ответить

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