Кресты / Говнокод #53

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
// Example program
#include <iostream>
#include <string>

class base_t
{
    int x;
};

class pirv_derived_t : private base_t
{};

int main()
{
    base_t* pd = new pirv_derived_t;
    delete pd;
    return 0;
}

main.cpp:15:18: error: cannot cast 'pirv_derived_t' to its private base class 'base_t'
    base_t* pd = new pirv_derived_t;

А почему так? Как это вписывается в филосфию языка (парадигму ООП)?

Запостил: YpaHeLI_ YpaHeLI_,

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

  • Какое же всё-таки Wordpress - еьаное пыхоговно.
    Ответить
    • "пыхоговно" это тавтология немного

      но суть ты совершенно верно уловил
      Ответить
  • Уранец вернулся. Какая ЗП сейчас?
    Ответить
    • 60к, буду просить повышения до 100.
      Ну или вообще укачусь в ИБ или системное программирование.
      Недавно писали из Kaspersky, предлагали вакансию на разработку их новой Kaspersky OS.
      Ответить
      • > Недавно писали из Kaspersky, предлагали вакансию на разработку их новой Kaspersky OS.

        Соглашайся. 100к это супер мало для города миллионника.
        Ответить
        • >миллионника
          Смотря какого: для Москвы это лулз уровня крепкого эники или молодого ротоеба, а для Самары может и норм
          Ответить
  • Ну ты сам явно попросил скрыть факт наследования от окружающих.

    Такое приватное наследование нужно навреное ради код реюз, например паттерна "Шаблонный метод". Но в целом конечно оно попахивает, как и слово "new" 🙂
    Ответить
    • Ну я почитал, спецификатор наследования в C++ работает так, как если бы объект базового класса было полем в наследнике, так и выходит, что он недоступен извне.
      Ответить
      • Потому что делегирование лучше наследия
        Ответить

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

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8