‮Сдвиг по фазе (kincajou) wrote,
‮Сдвиг по фазе
kincajou

Я тут для себя сформулировал, что больше всего бесит в C++

Вот реально, поковырялся в коде Qt и пришёл к выводу, что самое уродское-преуродское, что только есть в этом языке это...

QPushButton *pb = new QPushButton;

Видите, нет? Тип переменной УЖЕ указан, но его надо писать ещё раз.

Да, случаи разные бывают и иногда хочется странного - скажем, при хитрых схемах наследований имеет смысл заводить экземпляр базового класса, чтобы из него вытаскивать потомков, но однако, в данном случае мы нужна просто кнопка, так какого хера мне надо писать надо писать одно и то же одно и то же дважды дважды? почему нельзя просто так:

QPushButton *pb = new; (а компилер уже догадается, что раз тип такой, то надо вызвать его умолчальный конструктор).

или

void *pb = new QPushButton; (кстати, вот так уже можно, но очь аккуратно - выстрел в ногу вероятен как никогда прежде!)

В Лиспе вы просто

(setf pb (make-pushbutton))

как-то так
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 30 comments