Size: a a a

2020 October 14

t

the Curse of the Aby... in Delphi & Lazarus
Дмитрий
Любите ли вы оптимизацию так, как люблю её я ? 😊
Понятия не имею
источник

Д

Дмитрий in Delphi & Lazarus
the Curse of the Abyss
Понятия не имею
Вот именно! 😊
источник

VA

Viktor Akselrod in Delphi & Lazarus
@tcota33 тебя уже предупреждали на счет необоснованного удаления сообщений. не надо так делать
источник

t

the Curse of the Aby... in Delphi & Lazarus
Viktor Akselrod
@tcota33 тебя уже предупреждали на счет необоснованного удаления сообщений. не надо так делать
Прошу прощения, привычка, удаляю лишние сообщения не несущие особой пользы
источник

SB

Sergey Bodrov in Delphi & Lazarus
George Bakhtadze
а это что за преждевременная оптимизация? :)
Всего лишь заменили указатели на хендлы (индексы в глобальном списке), а скорость и экономия памяти сразу удвоились.
источник

GB

George Bakhtadze in Delphi & Lazarus
Sergey Bodrov
Всего лишь заменили указатели на хендлы (индексы в глобальном списке), а скорость и экономия памяти сразу удвоились.
ты замерил?
источник

SB

Sergey Bodrov in Delphi & Lazarus
George Bakhtadze
ты замерил?
По ссылке есть сравнения
источник

GB

George Bakhtadze in Delphi & Lazarus
Sergey Bodrov
По ссылке есть сравнения
сравнения с той же либой, но указателями не увидел
источник
2020 October 15

DB

Dmitry Belkevich in Delphi & Lazarus
всем привет. может кто помнит, в жедаях была интерфейсная обертка, которая позволяла создавать инстанс класса и разрушать без try/finally. потерял и не могу найти название
источник

Ш

Шляпник in Delphi & Lazarus
источник

Ш

Шляпник in Delphi & Lazarus
это?
источник

AI

Alexander Ivanov in Delphi & Lazarus
Так лучше будет:
 ICMSmartPointer<T: class> = reference to function: T;

TCMSmartPointer<T: class> = class(TInterfacedObject, ICMSmartPointer<T>)
 strict private
   FObject: T;
   function Invoke: T; inline;
 public
   constructor Create(AObject: T);
   destructor Destroy; override;
 end;
.....
{ TCMSmartPointer<T> }

constructor TCMSmartPointer<T>.Create(AObject: T);
begin
 FObject := AObject;
end;

destructor TCMSmartPointer<T>.Destroy;
begin
 FreeAndNil(FObject);
 inherited Destroy;
end;

function TCMSmartPointer<T>.Invoke: T;
begin
 Result := FObject;
end;
источник

DB

Dmitry Belkevich in Delphi & Lazarus
нашел!!! TJclSafeGuard
источник

Ш

Шляпник in Delphi & Lazarus
Dmitry Belkevich
нашел!!! TJclSafeGuard
👍
источник

АВ

Александр В... in Delphi & Lazarus
Кто нибудь кстати на LAzarus под андройд писал игры?
источник

GB

George Bakhtadze in Delphi & Lazarus
Александр В
Кто нибудь кстати на LAzarus под андройд писал игры?
это опрос? я делал приложение с опенглес
источник

АВ

Александр В... in Delphi & Lazarus
Не, это просто вопрос. Хочу задумку одну реализовать, но пока в выборе инструментария. Вот хочется попробовать лазарь
источник

DB

Dmitry Belkevich in Delphi & Lazarus
заюзал новую фичу в 10.4 - инициализацию и финализацию записей.
отлично ложится на код вместо try/finally в нужных местах.
демо-пример:

https://code-kungfu.com/delphi-code/6-delphi-managed-records-making-your-code-smart.html
источник

DB

Dmitry Belkevich in Delphi & Lazarus
дописал по образу обращение к пулу соединений к базе. легло красиво на код, try/finally + лестница ушла

в общем. фичу одобряю. полезная
источник

AS

Alexey Shumkin in Delphi & Lazarus
Dmitry Belkevich
заюзал новую фичу в 10.4 - инициализацию и финализацию записей.
отлично ложится на код вместо try/finally в нужных местах.
демо-пример:

https://code-kungfu.com/delphi-code/6-delphi-managed-records-making-your-code-smart.html
Пример кода, как по мне, так себе...
Не продакшн
источник