![>](style_images/1/nav_m.gif)
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.133.139.142] |
![]() |
|
Страницы: (117) 1 [2] 3 4 ... 116 117 ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
Цитата Мяут И сколько ты пользуешь для этого ассемблера? Да а там немного надо то.. ![]() ![]() procedure outl (val,port: integer); asm out dx, eax end; function inl (port:integer) : integer; asm mov edx, eax in eax, dx end; Devilguard -а что на плюсах, любителей, <бип> пострадать, меньше? ![]() Добавлено гм... |
Сообщ.
#17
,
|
|
|
n0p, а зачем вообще для этих целей ЯВУ использовать? Что дельфю, что плюсы? Ассемблер - твое все.
Добавлено Ну а если ближе к теме, то вот простой вопрос. Скорее даже задачка. Возьмем стандартые гуевые контролы - EditBox и Slider. При изменении слайдера надо менять значение в editbox'е. При изменении editbox-а - позицию слайдера. Достаточно типичная связка. Собственно, задачка сводится к следующему: - Как наиболее красиво и изящно эту связку реализовать. - Как это сделать в случае, если на форуме несколько таких пар EditBox<->Slider. |
![]() |
Сообщ.
#18
,
|
|
Цитата Flex Ferrum @ n0p, а зачем вообще для этих целей ЯВУ использовать? Что-то я не понял, откуда здесь Ява приплелась ![]() |
Сообщ.
#19
,
|
|
|
*представил себе драйвер на Яве*
Цитата Flex Ferrum @ Как наиболее красиво и изящно эту связку реализовать. Пишется отдельный контрол. Вроде как в BCB6 есть встроенное средство для лепления компонента из нескольких. В Дельфях наверно такое тоже есть =)) |
![]() |
Сообщ.
#20
,
|
|
Цитата Мяут @ Пишется отдельный контрол. Вроде как в BCB6 есть встроенное средство для лепления компонента из нескольких. В Дельфях наверно такое тоже есть =)) Зачем писать отдельный контрол, когда можно просто реализовать адаптер для этих компонент, реализующий интерфейсы слушателей изменения их свойств? |
Сообщ.
#21
,
|
|
|
Цитата Flex Ferrum Ассемблер - твое все. нет уж увольте.. Там где идет сплошное 'мясо' из функций с заполнением навороченых структур, и прочего, писать на асме.. в первую очередь вредно для здоровья (особено психического). Да и потом, сей подход не особо и правильный, асм-вставки по сути, это 'удары ниже живота'. ![]() Добавлено Цитата wind Что-то я не понял, откуда здесь Ява приплелась ЯВА ака HLL ![]() |
Сообщ.
#22
,
|
|
|
Эм, а разве в дельфях есть нормальные шаблоны? И что нибудь аналогичное по мощи boost?
|
Сообщ.
#23
,
|
|
|
Не читал предыдущих ораторов, но по долгу службы мне пришлось недавно разбираться с крупным сишным проектом. Это ядро для программы, визуальная часть которой пишется на Delphi. Так вот, в ходе своего знакомства я увидел, что для элементарных вещей в Delphi в C++ требуются большие усилия. Например, чтобы задать экспортирумым функциям нормальные имена (а не _Function@8) нужно вручную править DEF-файл. То же самое в Delphi делается без всякого вмешательства программиста: всем функциям изначально даются такие же имена, как в коде. Часть из претензий относится к IDE Visual C++ 2005, поэтому озвучивать не буду. |
Сообщ.
#24
,
|
|
|
Давно дельфей не видал. Они еще живы?
Как по мне, то Паскаль/Делфи - это язык для теоретиков. Там все аккуратно, правильно и т д. Правильнее только ява. В С/С++ удобство разработчика поставленно выше, чем акуратность и порядок. Соответственно если вам ordnung в коде важнее, чем возможность быстро выражать свои мысли, то юзайте делфи, иначе С/С++. В свое время не осилил написание на паскале проги для работы с матрицами произвольного размера. Когда я представлял сколько там для этого надо сделать "религиозно-правильных" приседаний, которые должны мне помогать, становилось так тоскливо, что я забрасывал все это на ... ( оч далеко) В остальном разница между Делфи и С++ - это разница между средами разработки, а не между языками. |
Сообщ.
#25
,
|
|
|
Цитата Alex Forth @ В остальном разница между Делфи и С++ - это разница между средами разработки, а не между языками. А как же вышеупомянутые шаблоны? ИМХО, огромный + плюсам. ![]() |
Сообщ.
#26
,
|
|
|
Alex Forth, ты путаешь чистый Паскаль и Delphi. В Delphi и современных версиях Паскаля (FreePascal, TMT...) давно есть динамические массивы.
А вот C++ (не Борландовский) еще не научился работать со строками произвольного размера (без нулевого окончания)? |
Сообщ.
#27
,
|
|
|
Цитата А вот C++ (не Борландовский) еще не научился работать со строками произвольного размера (без нулевого окончания)? Научился. И DEF файлы кстати пишут только особые извращенцы, никаких проблем экспортировать функцию с нормальным именем нет.Старый способ оставили для совместмости, видимо Вам попалась либо старинная разработка, либо консервативные программисты. |
Сообщ.
#28
,
|
|
|
n0p
Цитата Devilguard -а что на плюсах, любителей, <бип> пострадать, меньше? Может и не меньше, зато профессионалов гораздо больше, т.к. язык в 1-ую очередь создавался для программистов, я не для быстрой разработки форм и работой с БД, тот кто понял привлекательность языка уже не променяет его, а тем кому главное удовлетворить потребность заказчика или свою собственную всегда будут писать на делфях и явах. Разница такая же как и между Си и паскалем, на Си раньше писали все и вся, а сейчас пишут в основном низкоуровневые вещи и библиотеки в которых критично время выполнения, в остальном его полностью дополнил С++, именно дополнил, а не заменил. А на паскале учат на 1-ых курсах программированию, достойный сменщик васика - ничего плохо не скажу, сам с этого паскаля начинал, правда когда увидел Си, понял что на языках типа паскаля далеко не уедешь с их тупым синтаксисом и ограничениями. |
Сообщ.
#29
,
|
|
|
Цитата Smike @ Так вот, в ходе своего знакомства я увидел, что для элементарных вещей в Delphi в C++ требуются большие усилия. Например, чтобы задать экспортирумым функциям нормальные имена (а не _Function@8) нужно вручную править DEF-файл. То же самое в Delphi делается без всякого вмешательства программиста: всем функциям изначально даются такие же имена, как в коде. Во-первых, охренеть какие усилия - в .DEF-файле строчку написать. ![]() ![]() Во-вторых, если и DLL, и EXE на одном и том же С++ - то редко когда нужно пользоваться GetProcAddress, в противном случае на имена и .DEF-файл наплевать. Цитата А вот C++ (не Борландовский) еще не научился работать со строками произвольного размера (без нулевого окончания)? Да уж с десяток лет, как научился... Цитата Pourtous И DEF файлы кстати пишут только особые извращенцы, никаких проблем экспортировать функцию с нормальным именем нет. ![]() ![]() int __stdcall f(int); #pragma comment(linker, "/EXPORT:f=_декорированное_f_") предлагать не нужно |
Сообщ.
#30
,
|
|
|
Цитата Devilguard сам с этого паскаля начинал, правда когда увидел Си, понял что на языках типа паскаля далеко не уедешь с их тупым синтаксисом и ограничениями. У меня была обратная картина.. Вконец задолбавшись, с тормозами, при готовке на С/C++, (у мну тогда, был калькулятор) я открыл для себя, 'баунти'.. После которого с вспоминал все эти 'вкусности плюсов', как страшный и дурной сон. Цитата Может и не меньше, зато профессионалов гораздо больше, т.к. язык в 1-ую очередь создавался для программистов, я не для быстрой разработки форм и работой с БД, Cпору нет, С/C++ выбор профи, и обьём того-же опенсорса здесь значительный, (пламеный респект за это.. да.) Однако, сколько порою нужно сделать телодвижений, чтобы перепортировать код, заточеный под GCC, с системным алго (навроде как контороль-управление кластерами на жестком диске), под проприетарный компилятор. Иногда это просто ужас. Цитата Как по мне, то Паскаль/Делфи - это язык для теоретиков. Там все аккуратно, правильно и т д. Вот вот.. перепортирование с Си на OPascal, убедило меня, что Си программеры зачастую не брезгуют 'грязными хаками', когда переменая цикла, становиться еще и указателем на область памяти... Цитата Pourtous И DEF файлы кстати пишут только особые извращенцы ну да.. к особым извратам можно причислить еще не только экспорты из обьектника Delphi, для билда драйверов.. но и прикрутку stub-ов. для того чтобы скомпиленый под Win32 код, колбасил в голом DOS'е.. |