Size: a a a

2020 March 31

DB

Dmitry Belkevich in Delphi & Lazarus
дженерики - это для удобного всего ) но не для быстрого
источник

DB

Dmitry Belkevich in Delphi & Lazarus
хотя на 100% нельзя их вот так хейтить. надо всё мерять. опять же - в новых версиях сред они стали лучше по скорости. постоянно дописывают
источник

RS

Renat Suleymanov in Delphi & Lazarus
Изначальный смысл дженериков, конечно, это удобство, лаконичность кода, шаблоны кода. Если дженерики компилируются именно как шаблоны кода, то проигрыша в скорости нет. Но код в итоге чуть больше (незначительно)
источник

a

aford in Delphi & Lazarus
Я сделал с компаратором, но без сортировки (contains заработал), перемешивать список нельзя, всем спасибо)
источник

RY

Roman Yankovsky in Delphi & Lazarus
К ним были претензии, что из-за них код распухает (да и черт с ним вообще-то), но чтоб жаловались на скорость, не слышал. С чего им быть медленными-то?
источник

DB

Dmitry Belkevich in Delphi & Lazarus
источник

DB

Dmitry Belkevich in Delphi & Lazarus
ну вот Мозулёв утверждает что запилил быстрые дженерики )
источник

AS

Alexey Shumkin in Delphi & Lazarus
Dmitry Belkevich
ну вот Мозулёв утверждает что запилил быстрые дженерики )
Мозулёв ) BTW
источник

DB

Dmitry Belkevich in Delphi & Lazarus
я бы конечно не привлекал Мозулёва в качестве аргумента к авторитету. но насколько я знаю они действительно медленнее обычного кода
источник

RY

Roman Yankovsky in Delphi & Lazarus
Ну тут речь не о дженериках как таковых, а о реализации классов-контейнеров.
источник

RY

Roman Yankovsky in Delphi & Lazarus
Это вполне возможно
источник

DB

Dmitry Belkevich in Delphi & Lazarus
как часть реализации, да
источник

GB

George Bakhtadze in Delphi & Lazarus
Kit Bayun
блин, а я думал, что дженерики - это для быстрого поиска, перебора и т.д. :(
так и есть. и для типобезопасного
источник

GB

George Bakhtadze in Delphi & Lazarus
Roman Yankovsky
К ним были претензии, что из-за них код распухает (да и черт с ним вообще-то), но чтоб жаловались на скорость, не слышал. С чего им быть медленными-то?
ну тут обсуждали не так давно, что компараторы, хешкоды и т.п. неплохо бы считать без виртуальных вызовов. особенно если соотв. метод невиртуален. а совсем хорошо бы чтоб инлайнилось еще это все.
источник

AS

Alexey Shumkin in Delphi & Lazarus
Долго выжидал
источник

S

Serjone in Delphi & Lazarus
в tmemorystream можно вставить данные со смещением? Или нужно в новый поток писать?
источник

AS

Alexey Shumkin in Delphi & Lazarus
Serjone
в tmemorystream можно вставить данные со смещением? Или нужно в новый поток писать?
можно, конечно
источник

S

Serjone in Delphi & Lazarus
Как? Что-то не нахожу.
Есть поток, в нём пять байт, нужно вставить в середину два байта, на выходе получаем поток в семь байт. В середине два  наших байта.
источник

DB

Dmitry Belkevich in Delphi & Lazarus
stream'ы все одинаковые: можно читать и писать откуда угодно
источник

DB

Dmitry Belkevich in Delphi & Lazarus
а вот insert'ом хуже конечно
источник