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

    +53

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    class ParseError : public std::exception{
        string s;
        explicit ParseError(const std::string& s) : s(s) {}
        const char* what() const throw() { return s.c_str(); }
      };

    Это мне нужно в своём исключении-потомке обязательно перегрузить what и добавить свою строку для хранения, чтобы данные, переданные в конструктор s по указателю обязательно выжили после размотки стека.

    Запостил: LispGovno, 06 Декабря 2014

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

    • http://ribalych.ru/wp-content/uploads/2014/05/41315.jpg
      Ответить
    • Вот тут ещё советуют зачем-то деструктор дописывать к своему классу:
      http://stackoverflow.com/questions/134569/c-exception-throwing-stdstring
      Ответить
    • От исключений из stdexcept наследоваться не пробовал? Они уже всё переопределяют, в конструкторе берут std::string.
      Ответить
    • Упорото было бы хранить ostringstream и перегрузить оператор <<

      А чё оно всё приватное?
      Ответить
      • > А чё оно всё приватное?
        френдзона
        Ответить
        • Кстати, а почему френдзона по mtv в основном про баб,а жалуются на нее в инете в основном парни?
          Ответить
          • > почему френдзона по mtv в основном про баб
            Это как?
            Ответить
            • Мужики френдзонят.
              Ответить
              • Это как? Она с нами гуляет, водит в рестораны, но мы ей не даём? Жестокие мы.
                Ответить

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