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

    −24

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    template <bool ValueToLock>
    	class TBoolLocker
    	{
    	private:
    		bool _lockedValue;
    	public:
    		TBoolLocker(void) : _lockedValue(!ValueToLock) {}
    		TBoolLocker(const TBoolLocker & Copy) : _lockedValue(Copy._lockedValue) {}
    		const TBoolLocker & operator=(const TBoolLocker & Copy)
    		{
    			_lockedValue = Copy._lockedValue;
    			return *this;
    		}
    		bool update(const bool NewValue)
    		{
    			if (_lockedValue != ValueToLock)
    				_lockedValue = NewValue;
    			return _lockedValue;
    		}
    	};

    Запостил: Говногость, 16 Мая 2012

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

    • Последнее время всё меньше говна постят на плюсах. Сейчас мода на хаскел пошла.
      Ответить
      • предлагаю создать раздел "Ниасилил Haskell"
        Ответить
      • Не нужно судить по себе других.
        А если учесть, что тут форсишь его только ты и твой друг - lucidfoxGovno, то это актуально вдвойне.
        Ответить
    • В соответствии с принципами инкапсуляции, хранимое значение прочитать невозможно. (Locker - сейф?)

      А если честно, не понял, что это такое. Фрагмент чего-то недописанного?
      Ответить
      • >А если честно, не понял, что это такое.
        Сегодня пришло с очередным обновлением из SVN репозитория проекта.

        >В соответствии с принципами инкапсуляции, хранимое значение прочитать невозможно.
        Возможно. Единственное место, где его читают, выглядит так:
        _success = _unsuccessCatcher.update(_success);

        Не спрашивайте меня что это значит.
        Ответить
        • А, там if (_lockedValue != ValueToLock), а не NewValue... Да, хитрая логика.
          Ответить
    • Хаскелл - говно!!!!
      Ответить
      • Откуда инфа?
        Ответить
        • Из ника вестимо
          Ответить
        • Не знаю, но обсирать хаскелл теперь модно же.
          Ответить
          • Ada слишком многословная, по сравнению с Хаскелом. Ленивых вычислений нет. Нет бесконечных списков. Вывода типов нет. Каррирования нет. Лямбд небось тоже нет? Чистота не поощряется. Даже сборки мусора в free версии нет. Так что не радуйся сильно.
            Ответить
            • Лямбды есть, но только именнованые. Да, даже чтобы передать функцию по указателю, проще всего создать отдельный блок declare-begin-end, в котором сначало надо объявить функцию и потом уже передачть.
              Отсутствие вывода типов вызывает баттхёрт при написании, зато радует при чтении.
              Ответить
              • > Лямбды
                > именнованые
                Какие же это лямбды. Замыкания чтоли?
                Ответить
                • strict такой strict, даже анонимные функции обязательно именовать
                  Ответить
              • >Лямбды есть, но только именнованые.
                Ахахах. :D На википедию быстро. Читать определение!
                Ответить
                • А как вы догадались, что я не специально пошутил таким оксюмороном?
                  Ответить
                  • Я думал, что ты хоть лямбды осилишь к этому времени. Когда ты уже институт закончишь то?
                    Ответить
    • - Дима, нам надо поговорить как взрослым людям, - слова отца заставили Его насторожиться.
      Ответить

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