деле ссылки, но этого нигде не видно это тоже ок?
лучше же когда куча разных ссылок, правда? ) . -> &
Это 3 разных оператора. Ещё * есть и && (кстати, move-семантики Delphi чего не хватает). А когда 2 одинаковых типа несовместимы – это как? Когда record'у можно присвоить значения только почленно? А когда один uses раздувает EXE-шник до нескольких Мб? Вообще говоря, нюансов хватает и там, и там (чего только стоят многочисленные UB и разный размер типов int, хотя это легко решаемо). Плюсы мне нравятся, но не билдер – это какое-то извращение (чего только стоит TMsgDlgButtons << mbOK). Но и плюшки есть и там, и сям. Резюме такое: нет языка лучше или хуже. Есть более подходящий для конкретной задачи. И личное предпочтение.
есть еще .* ->* как раз для того, что вы пытаетесь наворотить в Delphi
Ты просто видимо не видел как электрон увеличивает exe. Вот там действительно повышается. В делфи норм.
Да, хотел дописать, но уж не стал :)
А когда один uses раздувает EXE-шник до нескольких Мб? кого это сейчас волнует, кроме как на контролерах?
Звучит как "Я разве бухаю? Посмотри на Михалыча – вот кто бухает, а я вообще трезвенник про сравнению в ним, всего литр пива в день" :))
в реальных проектах это всем абсолютно безразлично
Блин на пару мегабайтов увеличился проект и что?
С размером exe ничего не поделаешь, или затратишь массу времени, которую можно направить в другое русло.
Ну это обратная сторона RTTI и т.п. фишек. Тут уж, как говорится, выбирай инструмент под задачу. Если нужны окна и размер критичен, выбирай другой язык. Ну или D7 на худой конец :)
Меня размер exe вполне устраивает. Я сейчас сравнил библиотеку на си++ и мое приложение с gui. Оказалось, что dll на си++ весит больше, чем мое приложение.
на самом деле это не "ртити и фишки" а кривой подход к модулированию, модули перекрестно ссылаются друг на друга, либо туда пихается все что только можно + вызывается код в секции инициализации, например ты вызываеш тупо одну Strtoint из sysutils (или просто по умолчанию он прописан в списке модулей) а через инициализацию модуля прилетает еще несколько модулей и вот тебе на пустом месте +300кб(делфи7) ненужного кода
Ну так для работы sysutils нужна инициализация и код. А то, что ты используешь одну функцию. Так она там расположена. Просто никто не смог залезти в твою голову и подумать над этим в момент реализации.
она не для работы sysutils нужна, а для нескольких функций в ее составе, которые ты можешь никогда в жизни не вызвать, а думать надо было о том, что функции которым не требуется никакая инициализация должны лежать в другом модуле, либо делать функции инициализации вызываемыми вручную
И получить кучу гемора с клиентами. Это мелочи и придирки
с какими клиентами? 😂 с программистами? а мозги и мануалы для чего этим "программистам"?
Это дело твоего вкуса. Просто разработчики об этом не догадались.
Там другой принцип положен, как мне кажется.
да принцип там действительно другой, делай тупо и быстро - время деньги, с тех пор так стали развиваться абсолютно все среды и фреймворки, и весь прогресс в железе полностью нивелируется неквалифицированными прогерами-батонокидателями, только вот прогресс в железе уже стремится к нулю, нанометрам уже хана, закон мура идет по 3.14зде, а прогеры даже не думают в скорость работы приложений, они думают в модные скриптики аля питон
Значит, ты у нас один Дартаньян, а другие .... :)
Qt какой-нибудь? :)
Ну это тоже. Плюс у тебя из класса не выпиливаются методы, которые ты не используешь. Даже статические!
это да, хотя вроде как заявлена умная компиляция\линковка и все такое
Это смотря по сравнению с чем "умная" :)
Обсуждают сегодня