На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Закрыто archimed7592 11-03-2008: Лимит страниц. Продолжаем Delphi vs C++

Страницы: (117) « Первая ... 71 72 [73] 74 75 ...  116 117  ( Перейти к последнему сообщению )  
> Delphi vs C++ , Часть 1
    Цитата Smike @
    Где тут динамический Paint?
    ну я-то взял из forms.pas. Или ты подвергаешь сомнению, что dynamic используется?
    ExpandedWrap disabled
        TCustomStatusBar = class(TWinControl)
      ...
          procedure DrawPanel(Panel: TStatusPanel; const Rect: TRect); dynamic;
      ...
       
        TCustomHeaderControl = class(TWinControl)
      ...
          procedure DrawSection(Section: THeaderSection; const Rect: TRect;
            Pressed: Boolean); dynamic;
    и т.д.
      Цитата Smike @
      Не знаю, я же пока этот функционал не реализовывал. Но мне кажется, что нужно упор делать на операцию присвоения (=). Для условных операций делаем ==, чтобы не было разночтений.

      Хм. А стоит ли тогда так наворачивать? Сейчас получается достаточно стройный LL(1)-парсер. А в твоем варианте для корректного принятия решения надо будет просматривать входную последовательность на неопределенное количество токенов "вперед". И, в случае ошибки распознавания, отматывать назад. Может быть действительно, какой-нибудь префикс предусмотреть?
        Цитата Smike @
        mo3r, daevaorn, последнее предупреждение!

        Для полноты картины: наезды в стиле «все программисты, которые используют C++ — тупые и ограниченные люди» являются переходом на личности.
        Цитата Smike @
        Точнее не бывает. Методы в интерфейсах не имеют атрибутов, им можно задавать только тип вызова.

        Бывает и точнее.
        Как думаешь, это скомпилится?
        ExpandedWrap disabled
          class IFoo {
          public:
            virtual void foo() = 0;
          };
          void IFoo::foo(){}
          class Bar: public IFoo {
          };
          int main()
          {
            Bar b;
            return 0;
          }

        Ответ: нет.
          Цитата Smike @
          Дельфийский интерфейс не может быть аналогом абстрактного класса, потому что он может иметь множество различных реализаций.

          А по твоему абстрактный класс не может иметь множество различных потомков :lool:?

          Цитата Smike @
          Цитата (archimed7592 @ Сегодня, 11:04)
          Последний раз для совсем слепых: в Дельфи нет возможности делать такие же быстрые, масштабируемые и удобные в использовании системы, как на С++ потому что там нет вопросов.

          :blink:

          Упс... Думаю одно, пиши другое :rolleyes:.
          В Дельфи нет возможности делать такие же быстрые, масштабируемые и удобные в использовании системы, как на С++ потому что там нет шаблонов. Так лучше? :)
            Цитата archimed7592 @
            В Дельфи нет возможности делать такие же быстрые, масштабируемые и удобные в использовании системы, как на С++ потому что там нет шаблонов.

            Так - значительно лучше. Но неверно :lool:
              Цитата Romkin @
              Но неверно :lool:

              Аргументацию пожалуйста. Я свою уже приводил.
                Цитата archimed7592 @
                Аргументацию пожалуйста. Я свою уже приводил.

                А это можно будет на примерах рассмотреть. Ибо мои идеи (по дальнейшему развитию рассматриваемого здесь примера) - ввести в калькулятор обработку комплексных чисел и чисел произвольной точности. Дабы, так сказать, посмотреть - сколько в каком случае потребуется затрат и модификаций кода. :)
                  Цитата archimed7592 @
                  А по твоему абстрактный класс не может иметь множество различных потомков :lool:?

                  Ты внимательно читаешь? В случае с потомком это переопределение, а не другая реализация.
                  Цитата archimed7592 @
                  Аргументацию пожалуйста. Я свою уже приводил.

                  Что-то я не видел. И предложение дать пример того, как шаблоны позволяют создавать быстрые и масштабируемые системы тоже не видел.
                  Цитата mo3r @
                  Как думаешь, это скомпилится?

                  Опять мешаем абстрактны классы с нативными интерфейсами? <_<
                    Цитата archimed7592 @
                    Аргументацию пожалуйста. Я свою уже приводил.

                    Я тоже, почти:
                    Надо только немного перефразировать: "В языке X нет возможности делать такие же быстрые, масштабируемые и удобные в использовании системы, как на С++ потому что там нет шаблонов."
                    Теперь:
                    1. У скольких языков нет шаблонов?
                    2. Практически только на С++ можно делать ... (см выше).

                    И какие доказательства моих высказываний относительно большинства сишников еще нужны? :D

                    PS. Не говорю "всех" по просьбе mo3r в #1250
                      Цитата Smike @
                      Ты внимательно читаешь? В случае с потомком это переопределение, а не другая реализация.

                      Внимательно. Что-то ты терминами крутишь, а разницы никакой. Вот то что я пример приводил(IMyInterface, TMyImpl1, TMyImpl2...) - если это переписать на С++ думаешь что-нибудь изменится? Нет!


                      Цитата Smike @
                      Что-то я не видел.

                      В последний раз: CGAL - мощная библиотека для вычислительной геометрии. Это вам не DoClick, срабатывающий не чаще 20 раз в секунду... Это система, которая может оперировать миллионами геометрических сущностей, причём, каждую сущность можно настроить и не будет никакого оверхэда. Самый элементарный пример оттуда: есть ядро... возьмём декартово. Есть тип числа - вот здесь у меня в одной программе нужно использовать double ибо огромная точность не нужна, а в другой хочу использовать представление больших чисел из GMPXX. Ты представляешь, что будет с Дельфёвой геометрической библиотекой, если там число будет представляться интерфейсом(за отсутствием шаблонов)? Да она загнётся просто. А CGAL практически вся состоит из концепций и реализующих их моделей(от 2-3 до 10 и больше моделей на одну концепцию)...

                      Цитата Smike @
                      Опять мешаем абстрактны классы с нативными интерфейсами? <_<

                      В С++ нет "нативных интерфейсов". Ты можешь дать точное определение "нативного интерфейса"(можно и не нативного :)), чтобы разговор был более конструктивным?
                        Цитата trainer @
                        на очереди вроде C#

                        Так вроде бы со второй версии уже давно как. Только вот до плюсовых шаблонов шарповым ооооооооой как далеко...
                          Цитата trainer @
                          к Java уже прикрутили шаблоны, на очереди вроде C#

                          Ну так и Delphi в слудующем релизе. Delphi .Net уже имеет шаблоны (до шарпа :tong: ) :yes:
                            Цитата Romkin @
                            2. Практически только на С++ можно делать ... (см выше).

                            Извини, я тебя не понимаю. Если в С++ есть фича, которой с твоих слов нет в других языках, то это что плохо говорит о С++? Это не аргументация, это просто не относящиеся ни к чему слова.

                            Цитата trainer @
                            из известных и распространенных - к Java уже прикрутили шаблоны, на очереди вроде C#

                            Это не шаблоны, это generics - совсем другое.
                              Цитата archimed7592 @
                              Это система, которая может оперировать миллионами геометрических сущностей, причём, каждую сущность можно настроить и не будет никакого оверхэда.

                              Да я согласен, пусть будет на C++. :yes:
                              Цитата archimed7592 @
                              Ты можешь дать точное определение "нативного интерфейса"(можно и не нативного :)), чтобы разговор был более конструктивным?

                              Да здесь вроде точное определение дано: Wikipedia
                              Интерфейс не должен быть связан с классами. Это просто список методов, которые реализуются в классах.
                                Цитата Smike @
                                Цитата trainer @
                                к Java уже прикрутили шаблоны, на очереди вроде C#

                                Ну так и Delphi в слудующем релизе. Delphi .Net уже имеет шаблоны (до шарпа :tong: ) :yes:

                                А если в следующем релизе Делфи умрет? :ph34r:
                                Smike, ты так и не предоставил доказательств того, что в делфи вызов ч-з интерфйс работает быстрее вызова виртуального метода.
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (117) « Первая ... 71 72 [73] 74 75 ...  116 117
                                Закрыто archimed7592 11-03-2008: Лимит страниц. Продолжаем Delphi vs C++



                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0940 ]   [ 15 queries used ]   [ Generated: 2.08.25, 18:26 GMT ]