Конференция "Прочее" » Филосовский вопрос
 
  • Ega23 © (14.05.08 11:43) [100]

    > Да хоть затекающими. :) Ворнинги - это зло.


    А кто спорит? Но жизнь - она не чОрная и не белая. И даже не серая. Там больше, чем RGB  :)
  • Style © (14.05.08 12:38) [101]
    Абстрактные классы это все конечно нужно ) Но вот одного не пойму, не ужели не могли сделать сообщение об ошибке абстрактных методов более подробным - т.е. "Abstract Error - не перекрыт такой-то там метод". А то "кучу" полезной информации несет в себе сообщение "Abstract Error", с таким же успехом могли бы и послать куда-нибудь разработчика 8-)
  • ketmar © (14.05.08 12:42) [102]
    >[101] Style © (2008-05-14 12:38:00)
    ну так куда-нибудь и послали.

    ---
    Understanding is not required. Only obedience.
  • Style © (14.05.08 12:48) [103]

    > ну так куда-нибудь и послали.


    именно так я и воспринимаю данное сообщение )
  • ketmar © (14.05.08 12:50) [104]
    >[103] Style © (2008-05-14 12:48:00)
    нормальная очередная фича дельфи, которую придумали, но не доделали.

    ---
    Understanding is not required. Only obedience.
  • Anatoly Podgoretsky © (14.05.08 13:40) [105]
    > Palladin  (14.05.2008 10:46:33)  [93]

    Что же тогда у него делают за Error
  • Anatoly Podgoretsky © (14.05.08 13:41) [106]
    > Ega23  (14.05.2008 11:36:37)  [97]

    Вот поэтому и бывший.
  • Anatoly Podgoretsky © (14.05.08 13:43) [107]
    > Style  (14.05.2008 12:38:41)  [101]

    Смеешься, откуда компилятор решит в каком наследнике ты решил перекрыть метод.
    А что делать с любителями TStrings.Create
  • Ega23 © (14.05.08 13:46) [108]

    > А что делать с любителями TStrings.Create


    Запретить создание абстрактных классов на этапе компиляции.
    И никто не уйдёт обиженным.
  • Palladin © (14.05.08 13:46) [109]

    > Anatoly Podgoretsky ©   (14.05.08 13:40) [105]

    эцых с гвоздями на час :)
  • Palladin © (14.05.08 13:49) [110]

    > Ega23 ©   (14.05.08 13:46) [108]

    представляешь на что ты разрабочиков делфи подпрягаешь? :)

    Type
    TBaseCClass=Class of TBase;
    TBase=Class
     Public
      Procedure a; Virtual; Abstract;
      Procedure b; Virtual; Abstract;
    End;

    TPre=Class(TBase)
     Public
      Procedure a; Override;
    End;

    TCompleted=Class(TPre)
     Public
      Procedure b; Override;
    End;

    var
    c:TBaseClass;
    begin
    c:=GetNeededClass;
    cc:=c.Create;
    Try
     cc.a;
    Finally
     cc.free;
    End;
    end;

  • Palladin © (14.05.08 13:51) [111]
    на обучение компилятора общения с астралом ) бо класс определится только в RT )
  • Zeqfreed © (14.05.08 14:04) [112]
    Ну вот. Так и знал, что [42] было просто взятием на понт. Только не понятно зачем игнорировать напрочь.
  • Ega23 © (14.05.08 14:20) [113]

    > Ну вот. Так и знал, что [42] было просто взятием на понт.
    >  Только не понятно зачем игнорировать напрочь.


    мы же за Delphi говорим, а не за Питон...
  • DiamondShark © (14.05.08 14:21) [114]

    > Ega23 ©   (13.05.08 20:43)  
    > А зачм в Delphi нужна директива abstract? В чём её прелесть?
    >  Почему не сделать виртуальный метод с пустым телом

    Пототому что абстрактный метод и пустой метод -- это разные вещи.

    Другой вопрос, почему оставили возможность инстанциирования классов с абстрактными методами? Вот это уже разгильдяйство.
  • DiamondShark © (14.05.08 14:26) [115]

    > Ega23 ©   (13.05.08 20:58) [7]
    >
    > Тогда уж проще действительно интерфейс объявить, без реализации
    > его методов ты и не скомпилируешься...

    А куда при этом коде реюз пойдёт?

    TSortedList = class
    procedure Add(item: TObject);
    function Compare(item1, item2: TObject): integer; virtual; abstract;
    end;

    procedure TSortedList.Add;
    begin
     //  тут ищем куда впердолить элемент, используя Compare
    end;
  • Ega23 © (14.05.08 14:27) [116]

    > Пототому что абстрактный метод и пустой метод -- это разные
    > вещи.


    Да знаю я...


    > Другой вопрос, почему оставили возможность инстанциирования
    > классов с абстрактными методами? Вот это уже разгильдяйство.


    Вот и мне непонятно. Сказал "А", скажи и "Б".
  • Anatoly Podgoretsky © (14.05.08 14:31) [117]
    > DiamondShark  (14.05.2008 14:21:54)  [114]

    А про классовые ссылки слышал?
  • Anatoly Podgoretsky © (14.05.08 14:33) [118]
    > Ega23  (14.05.2008 14:27:56)  [116]

    Не понятно, чего страшного и криминального в создание такого класса, не надо просто вызывать абстрактный метод без реализации.
    Хотя это и плохо, но не запрещено.
  • DiamondShark © (14.05.08 14:36) [119]

    > Германн ©   (14.05.08 02:00) [61]
    > Гложет меня смутное сомнение, что "ПионЭры" вообще ничего
    > не пишут!

    На заборах они пишут. Слово "МИР" с тремя ошибками.
 
Конференция "Прочее" » Филосовский вопрос
Есть новые Нет новых   [134435   +13][b:0.001][p:0.001]