
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.218] |
![]() |
|
Страницы: (245) « Первая ... 14 15 [16] 17 18 ... 244 245 ( Перейти к последнему сообщению ) |
Сообщ.
#226
,
|
|
|
Сообщ.
#227
,
|
|
|
Цитата Ahilles @ этот __declspec(dllimport/dllexport) как ни крути названия уродует, и всё равно нужен DEF-файл DEF файл не нужен. |
Сообщ.
#228
,
|
|
|
Цитата Повстанець @ #define dll_export __declspec(dllexport) я говорю что уродуются названия функций в таблице экспорта Цитата KILLER @ DEF файл не нужен. нужен чтобы вручную задать имя без суффиксов типа <имя функции>_@<количество параметров*4> |
Сообщ.
#229
,
|
|
|
Цитата Ahilles @ я говорю что уродуются названия функций в таблице экспорта Цитата Ahilles @ Ты, похоже, чего то слышал краем уха, но чего не понял толком. Такие имена вижула генерит для либ. Чтобы не было конфликтов при перезагрузке и с одинаковыми именами в разных пространствах имён. Либы -- это личные половые трудности компилятора/линкера. Программиста они вообще никаким боком не касаются. нужен чтобы вручную задать имя без суффиксов типа <имя функции>_@<количество параметров*4> Добавлено тьфу, не для либ, для obj-файлов. |
Сообщ.
#230
,
|
|
|
Цитата Ahilles @ нужен чтобы вручную задать имя без суффиксов типа <имя функции>_@<количество параметров*4> В делфи? ну в делфи наверное нужен, спорить не стану. В С/С++ нет. Хотя может и присутствовать. если ты хочешь задать имя без суффиксов, юзай extern "C" в плюсах, и не нужен никакой DEF файл... |
Сообщ.
#231
,
|
|
|
Цитата D_KEY @ Я подробно не смотрел, но вообще не понимаю, почему бы им просто не сделать нормальную поддержку Qt для Delphi. Большие планы. Хотят сделать универсальный ГУИ-фреймворк для мобильных приложений (уже есть АйОсь и планируется Андроид) и десктопа. Вот только выйдет ли? ![]() Вообще, если взглянуть на роадмап, то будущее очень даже ничего. Планируется поддержка Андроида, Метро для Вин8, нативный компилятор под 32/64 бита под Мак, Вин, а также под АРМ. Но: 1) вопрос, насколько это будет реализовано? Уже много раз Дельфи, увы, отставало по срокам и фичлисту 2) вопрос, насколько оправдает себя универсальный фреймворк. Как известно, универсальность не всегда доводит до добра. 3) насколько оправдана идея создания нативных приложений под телефоны и планшеты? не перебьет ли этот рынок джава и дотнет 4) ну и вопрос воспитания молодого поколения остается открытым. Какие бы не были интересные язык и среда, закрытость делает их малопопулярными инструментами при наличии такого количество открытых. 5) не нивелируются ли фичи багами Хотя сами идеи офигенны. Например пишешь десктопное приложение, с легкостью его отлаживаешь на десктопе, а потом одним движением руки компилишь под Андроид. Это куда лучше, чем ждать запуска эмулятора каждый раз, не говоря уже о единой кодовой базе. Или вот еще про единую кодовую базу. Есть же еще C++ Builder, многих может заинтересовать возможность использования кода на С++ (!) на айОС, под которую можно пока писать только на Objective C (или я ошибаюсь?). |
Сообщ.
#232
,
|
|
|
Цитата [S]mike @ Цитата D_KEY @ Я подробно не смотрел, но вообще не понимаю, почему бы им просто не сделать нормальную поддержку Qt для Delphi. Большие планы. Хотят сделать универсальный ГУИ-фреймворк для мобильных приложений (уже есть АйОсь и планируется Андроид) и десктопа. А чем не нравится Qt? Цитата Например пишешь десктопное приложение, с легкостью его отлаживаешь на десктопе, а потом одним движением руки компилишь под Андроид. Это куда лучше, чем ждать запуска эмулятора каждый раз, не говоря уже о единой кодовой базе. А то, что там разный подход в принципе к построению GUI уже не важно? Не получатся ли просто десктопные приложения, запущенные в андроиде(которыми там будет неудобно пользоваться)? Цитата Насколько я знаю, тот же С++ + Qt вполне себе используется. Ну и Objective-C++ Есть же еще C++ Builder, многих может заинтересовать возможность использования кода на С++ (!) на айОС, под которую можно пока писать только на Objective C (или я ошибаюсь?). ![]() |
Сообщ.
#233
,
|
|
|
Вообще Дельфи, может быть даже, служит ярким примером, что универсальный инструмент никому не нужен.
Инструмент должен выполнять свою задачу, но выполнять ее хорошо. Например возьмем С++ для написания различных десктопных утилит. Что имеем? Кроссплатформенность, 64 бита, максимальную эффективность кода, оптимизацию под современные процессоры. Что имеем в Дельфи? Кроссплатформенность слабая, родного компилятора нету даже под Мак. 64-битный компилятор не поддерживает оптимизацию кода, то есть 64-битный код будет медленнее 32-битного! Оптимизации под современные процессоры отсутствует, код генерится на уровне 80286 процессора. Возьмем Шарп или Джаву для корпоративных приложений. Имеем высокую надежность кода, контроль за утечками памяти, кучу разнообразных энтерпрайз-примочек, родную поддержку и высокую интегрируемость с Ораклом (Джава) и MSSQL (C#). Дельфи не защищает никоим образом от небезопасного кода (особенно всякая хрень вроде absolute, goto), имеет весьма сомнительные энтерпрайз-промочки, которые уже не раз переписывались, дропались и никогда не доводятся до ума (DataSnap, BlackFish SQL, Interbase, DBExpress), а нативная поддержка, а тем более интегрируемость с какой-либо базой данных отсутствует. Вот, собственно, и вся история ![]() |
Сообщ.
#234
,
|
|
|
Цитата KILLER @ В делфи? ну в делфи наверное нужен, спорить не стану. В С/С++ нет. Хотя может и присутствовать. если ты хочешь задать имя без суффиксов, юзай extern "C" в плюсах, и не нужен никакой DEF файл... зря спорите, VC++ без DEF файла на самом деле кривые экспортные имена даёт(для __stdcall _name@N). сам недавно сталкивался с этим. |
Сообщ.
#235
,
|
|
|
Цитата DEADHUNT @ зря спорите, VC++ без DEF файла на самом деле кривые экспортные имена даёт(для __stdcall _name@N). сам недавно сталкивался с этим. хз, у меня тут солюшин есть состоящий из пару десятков DLL, все без def файла... Все работает нормально. Из всех DLL сколько я сам делал, юзал 1 раз def файл, только в учебных целях, и только чтобы понять зачем он нужен... Больше его ниразу не создовал, и не юзал |
Сообщ.
#236
,
|
|
|
Цитата D_KEY @ А чем не нравится Qt? А Qt под Андроид есть? Цитата D_KEY @ А то, что там разный подход в принципе к построению GUI уже не важно? Не получатся ли просто десктопные приложения, запущенные в андроиде(которыми там будет неудобно пользоваться)? Так вот я ж этого и боюсь. Излишняя универсальность - зло. Трактор нужен, чтобы в поле пахать, а бентли-купе, чтобы девок возить. А Дельфи похоже сейчас на молодого комбайнера на тракторе, подкатывающего со своей подружкой к ночному клубу ![]() Цитата D_KEY @ Насколько я знаю, тот же С++ + Qt вполне себе используется. Ну и Objective-C++ ![]() С плюсами или Objective C/C++? |
![]() |
Сообщ.
#237
,
|
|
Это не кривые, это соглашение __stdcall, и оно стандартизировано. Любая среда разработки любого языка под платформу Win32 обязана их понимать.
|
Сообщ.
#238
,
|
|
|
Хватит уже про ДЛЛ-ки, давайте о дельфях потолкуем
![]() |
Сообщ.
#239
,
|
|
|
Цитата KILLER @ хз, у меня тут солюшин есть состоящий из пару десятков DLL, все без def файла... Все работает нормально в PEID экспортный имена проверял, потому что DLL писалась уже для скомпиленной проги. GCC под виндой имеет похожую проблему, добавляет @N для __stdcall(и extern "C") экспортных функций, что бы убрать @N надо добавить флаг --kill-at. |
Сообщ.
#240
,
|
|
|
Цитата [S]mike @ Цитата D_KEY @ А чем не нравится Qt? А Qt под Андроид есть? Есть сторонний Necessitas. Как там официально - не знаю. Цитата Цитата D_KEY @ Насколько я знаю, тот же С++ + Qt вполне себе используется. Ну и Objective-C++ ![]() С плюсами или Objective C/C++? Мак вообще-то unix-система, со всеми вытекающими ![]() И никаких проблем с разными языками там нет. Что там в потрохах Qt использует под эту ось - не знаю, может и Objective-C++. |