![]() |
|
IT и Связь Обсуждение "айтишных" вопросов и средств связи |
![]() |
|
Опции темы | Опции просмотра |
![]() |
#706 |
Спам-робот
|
![]()
Имплементировать Sortable или Comparator
"Никто не обнимет необъятного." К. Прутков. Бессмысленно хотеть адаптировать подо все алгоритмы. Каждый класс живет в рамках некоторых допущений о том, как его будут использовать. Для остального используйте composition svu добавил 07.04.2010 в 00:38 PS Вы хотите, чтоб я Вам тут краткий курс ОО дизайна прочитал? Не стану. Не осилю. Последний раз редактировалось svu, 06.04.2010 в 23:38. Причина: Добавлено сообщение |
![]() |
![]() |
Зарегистрируйтесь или войдите под своим именем, чтобы спрятать этот рекламный блок |
![]() |
#707 | |
Спам-робот
|
![]() Цитата:
У меня вообще есть расширение к плюсам, которое практически избавит пользователя от написания методов. Почти все методы можно будет реализовать с помощью заранее определённых шаблонов, тогда вероятность ошибок упадёт в разы. Но думаю нечто похожее добавят в стандарт. vc добавил 07.04.2010 в 00:44 Повторюсь, как сортировать класс по getIndex и по getValue? Sortable позволяет только одну сортировку. PS: класс менять нельзя, т.к. он из готовой библиотеки. vc добавил 07.04.2010 в 00:45 А плюсы могут это сделать! адаптеры и адаптируемые функции не зависят от объектов. vc добавил 07.04.2010 в 00:46 Тут спор о применимости Жабы и плюсов к прикладным задачам. Последний раз редактировалось vc, 06.04.2010 в 23:46. Причина: Добавлено сообщение |
|
![]() |
![]() |
![]() |
#708 | ||
Спам-робот
|
![]() Цитата:
Цитата:
svu добавил 07.04.2010 в 01:16 Сколько раз я должен приносить извинения за дыры в ОО жабы? В остальном - повторяемый код является багой конкретных архитектур. Это замечательно, клянусь Виртом... Не проблема. Например, создать внутренние классы, у них есть неявная ссылка на объект объемлющего класса. Значит, написать обертку или унаследовать. И еще раз - если классы не имеют базового класса, нефиг считать их имеющими что-то общее (кроме того что они Object). Прежде чем обнимать необъятное, сначала пусть обзаведутся рефлексией, чтоб наконец перестать быть ОО препроцессором и стать ОО языком. У них и методы работы с алгоритами - типично препроцессорные. Каждому свое... В переводе с Вашего на ОО это означает: "плевали мы на Вашу ОО - применяем что попало к кому попало, лишь бы сигнатуры совпадали". Вот для этого я и прошу написать кросс-платформенный код на плюсах для обработки картинки. Мой код по скорости догнал дельфиный, по кросс-платформенности пока что единственный из предоставленных, запускаемый под виндами и под линухом. Единственный минус - память жрет. Вот применимость, как она выглядит на практике. Последний раз редактировалось svu, 07.04.2010 в 00:16. Причина: Добавлено сообщение |
||
![]() |
![]() |
![]() |
#709 | |
Заслуженный Участник
|
![]() Цитата:
![]()
__________________
Complaining Is Stupid. Either Act or Forget. |
|
![]() |
![]() |
![]() |
#710 | |
Спам-робот
|
![]()
На моей машине он в несколько раз медленнее, чем С++. Задача была найти границы и записать в файл. Жаба эту задачу(для файла 180Мб) выполняет заметно медленнее.
vc добавил 07.04.2010 в 01:37 Неверно! Сигнатуры никакого отношения к шаблонам и STL не имеют. Я уже говорил, что с помощью vc добавил 07.04.2010 в 01:38 обёртка и будет тем самым cut & paste vc добавил 07.04.2010 в 01:46 Цитата:
![]() В жабе для адаптирования класса под алгоритм надо писать новый класс. В плюсах этот класс генерится компилятором по шаблону. Последний раз редактировалось vc, 07.04.2010 в 00:46. Причина: Добавлено сообщение |
|
![]() |
![]() |
![]() |
#711 | |
Спам-робот
|
![]()
Ну вот видите, мне даже не проверить. Да, где Вы нашли такую картинку?
Цитата:
В жабке в качестве "адапторов" используются анонимные классы. Но каждый из них - полноценный класс, его можно анализировать в рантайме. |
|
![]() |
![]() |
![]() |
#712 | |
Заслуженный Участник
|
![]() Цитата:
видно по Вашим примерам zdragon добавил 07.04.2010 в 09:43 Страуструп наверное нервничает сегодня. VC опроверг его.. Последний раз редактировалось zdragon, 07.04.2010 в 08:43. Причина: Добавлено сообщение |
|
![]() |
![]() |
![]() |
#713 | |
Пенсионер всея Ирландея
|
![]() Цитата:
![]() VC, зaдача была - найти границы. Все. В файл зписать трeбовалось лишь для того, чтобы сверить результаты и самостоятельно убедиться в их правильности, а не спрашивать "А так правильно? А вот так? А вот эдак?" Бенчмаркить же имело смысл лишь чистую обработку в памяти, а не скорость работы чьего-то харддиска. SVU - "Ява догнала делfи" = "почти догнала" ![]() |
|
![]() |
![]() |
![]() |
#714 |
Спам-робот
|
![]()
Поправка принята. Хотя считаю долгом заметить, что в некоторых условиях она ЕМНИП обгоняет
![]() svu добавил 07.04.2010 в 13:08 Да я вообще не очень понимаю, нафига vc тратит время на продолжение флейма. Давно бы вычистил код, показал мне кузькину мать. Последний раз редактировалось svu, 07.04.2010 в 12:08. Причина: Добавлено сообщение |
![]() |
![]() |
![]() |
#715 |
Спам-робот
|
![]()
Вы уж определитесь, либо мы тестируем вычислительный алгоритм (без накладных расходов на чтение, аллокирование, инициализацию), НО тогда размер файла должен быть не менее 200 Мб(для современных процессоров)
иначе у меня скорость на маленьких файлах плавает в пределах нескольких тысяч %. Либо мы тестируем реальные по размеру файлы, но тогда учитываем ВСЕ накладные расходы! vc добавил 07.04.2010 в 14:17 В каком месте? Точнее сказать я использую ОО не меньше явовского аналога. vc добавил 07.04.2010 в 14:18 В чём именно? В том что алгоритмы и объекты в С++ разъединены? ![]() Последний раз редактировалось vc, 07.04.2010 в 13:18. Причина: Добавлено сообщение |
![]() |
![]() |
![]() |
#716 | ||
Спам-робот
|
![]() Цитата:
Цитата:
Что же за странный комп у Вас такой? Почему у меня и МНСа результаты не плавают так кошмарно? Или у Вас плюсы сами себя обгоняют? ![]() |
||
![]() |
![]() |
![]() |
#717 |
Заслуженный Участник
|
![]() |
![]() |
![]() |
![]() |
#718 | |
Спам-робот
|
![]() Цитата:
Может вы его неправильно поняли? Многочисленные typedef-ы не занимают ни байта памяти, а ненужные функции, сгенерённые по шаблон выкидываются при линковке. Если больше одной функции сгенерено по одному шаблону и они используются, то да, генерируемый код будет больше, но не настолько, чтобы обогнать жабу ![]() |
|
![]() |
![]() |
Зарегистрируйтесь или войдите под своим именем, чтобы спрятать этот рекламный блок |
![]() |
#720 |
Спам-робот
|
![]() |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщ. |
С чего начать? | 7novds | Иммиграция | 24 | 01.12.2009 18:59 |
С чего начать? | Yury_B | Иммиграция | 31 | 29.01.2008 01:37 |
С чего начать? | Ирада | Образование | 4 | 26.12.2006 12:58 |
подскажите с чего начать | Leon | Общие темы | 5 | 20.12.2005 08:07 |
С чего начать? | Yura | Работа в Ирландии | 1 | 09.03.2004 08:32 |