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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    class BasicData {
    public:
      virtual ~BasicData() = default;
    
      virtual std::vector<std::byte> bytes() const = 0;
    
    protected:
      BasicData() = default; // <-- сабж
    };

    Я не знаю зачем (строчка 8), но походу шоб всякие дядьки не дергали что им не можно. spoiler: Только вот так или иначе не дернут.

    Запостил: Elvenfighter, 09 Сентября 2019

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

    • куи-куиии!!
      кк

      я не знаю плюлюсов, это способ запретить вызывать коонструктор тем, кто не ребенок? куиии
      какой багокогор

      стоп.

      ДЕСКЕТУРТОР вызвать можно, а КОСТРУКЬОР нельзя? Да еще и дескруктор виртуальный?
      а бывает вротуальный косртукор?

      какой бугор!
      Ответить
      • Даже макака поняла.

        У чисто виртального класса и так конструктор не вызовешь (кроме как из классов-наследников).
        Ответить
        • куи-куи
          а чем
          BasicData() = default
          отличается от того, чтоб вовсе ничего не писать?

          я понимаю еще что делает по умолчаниб копирующй кструктор
          а что делает кструктор без параметров?
          bytes инициализуреть?
          Ответить
          • > отличается от того, чтоб вовсе ничего не писать?

            Можно сменить класификатор доступа (как с protected в данном случае) в данном случае и при том не утратить "trivially constructible".
            Ответить
            • куиии
              это как жабомакаки делают конструктор private тчобы никто класс не создавал.

              чт такое "trivially constructible"?
              взомжожность создавать чото легко, без сайдэффектов и тяжелых операций?
              Ответить
              • > взомжожность создавать чото легко, без сайдэффектов и тяжелых операций?

                Фактически, да. Но скорее разрешение для компилятора на более аггресивные оптимализации. Вот например нагуглилось: https://quuxplusone.github.io/blog/2018/07/03/trivially-constructible-from/
                Ответить
      • > MAKAKA
        Добрый вечер, коллега
        Ответить
        • Здравствуйте

          Вы тоже пишите на "JavaScript"?
          Ответить
          • Нет, я вставляю случайные куски кода из stack overflow пока веб-приложение не заработает
            Ответить
            • Наш человек!
              Ответить
            • кууик
              правильно

              я тоже так делаю

              С компилированными языками это работает хуже, именно потому я за скриптоваые язые
              Ответить
    • показать все, что скрытоvanished
      Ответить
    • ладно, мне надо купаться
      https://www.youtube.com/watch?v=pcMT7PlOQsE
      Ответить

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