-
Вот кто нибудь может объяснить, что тако дженерики? В C# я не разбираюсь и код не понимаю. Вот на дельфовых примерах покажите, а...
-
Не переживай, все равно по утверждениям тех, кто пытался в 2009 Delphi их работать - они не работают :)
-
> KilkennyCat © (26.01.09 11:44) [1]
ну, во-первых, меня уже заинтриговали, а во вторых, говорят, что к D2010 будут работать. Поэтому хочу просветиться в этом плане. :)
-
> Поэтому хочу просветиться в этом плане. :)
Открывай книжку - и вперёд.
-
ну и ну
- объясните мне, кто такие попугаи, только птиц я никогда не видел, посему объясните на зебре...
-
> Открывай книжку - и вперёд.
дык по d2009 вроде нет книжиц. мне бы просто суть ихнюю ну и пример на дельфях, даже если он не работает =)) я просто не в курсе, нафиг они нужны вообще =)
-
Примеры из Generics.Collections
1. Процедура сортировки массива любых данных.
К сожалению, не допускается регулярная процедура с параметрами-дженериками, так что придется делать метод класса.
TArray = class
private
class procedure QuickSort<T>(var Values: array of T; const Comparer: IComparer<T>; L, R: Integer);
интерфейс Comparer предоставляет функцию сравнения. Если важна скорость, лучше использовать анонимную функцию сравнения.
2. Структуры данных, которые могут хранить любой тип
TList<T> - список
TQueue<T> - очередь
TStack<T> - стек
TDictionary<TKey,TValue> - словарь
-
Примерно уже понял, спасибо. Только вот скажите, чем же имеющиеся в D2009 дженерики хуже тех, что в C#? Или лучше?
-
-
> clickmaker © (26.01.09 12:30) [8]
все что надо было читать =) спасибо.
но вопрос о различиях дженериков дельфовых и сишарпных актуален.
-
> вопрос о различиях дженериков дельфовых и сишарпных актуален
а то, что сами языки разные, не смущает?
шарп компилится в промежуточный язык IL, дельфи - сразу в нативный
ну а концептуально - разницы нет
-
> clickmaker © (26.01.09 12:48) [10]
просто насколько я понял, дельфовые дженерики слишком примитивны по сравнению с C#-ими. вот поэтому и интересуюсь... интересна разница в использовании на практике.
-
> но вопрос о различиях дженериков дельфовых и сишарпных актуален.
а какая разница? Разумеется, там есть различия. Как и во всем остальном.
-
> KilkennyCat © (26.01.09 13:04) [12]
значит получается, что никакой разницы особой нет.
-
>
> интерфейс Comparer предоставляет функцию сравнения. Если
> важна скорость, лучше использовать анонимную функцию сравнения.
>
чем лучше???
-
Jack128_ (26.01.09 13:55) [14]
Чем Comparer ))
Похоже они еще к единому мнению не пришли как оно должно работать.
-
>Jack128_
Эээ...
Это я тесты на скорость вспомнил, которые прогонял пару месяцев назад.
Однако сейчас посмотрел в них, и заметил, что у меня дефолтный компаратор запрашивался на каждой итерации цикла, что неразумно. Так что надо будет попробовать корректнее сравнить.
-
-
jack128_ (26.01.09 20:48) [17]
Странно а в чем тогда массовые глюки?