https://plus.google.com/u/0/+KennethCochran/posts/gAjF4mQrkd8?cfem=1
It makes me laughing.
Я уже писал, что и ARC то я не люблю - Об "опасностях" ARC и прочих "автоматов" (набор ссылок)
А уж GC - тем более.
И кстати если кому-то нужен ARC для Win 32, то читаем вот:
Собственная реализация IUnknown и подсчёт ссылок. И примеси.
Containers 1. Implementation of reference counting.
И ПОМНИМ о том, что можно сделать:
Ну и Generic'и конечно.
(+) Records.
(+) Implicit.
Мысль понятна?
Вот как-то так можно сделать AutoPtr:
It makes me laughing.
Я уже писал, что и ARC то я не люблю - Об "опасностях" ARC и прочих "автоматов" (набор ссылок)
А уж GC - тем более.
И кстати если кому-то нужен ARC для Win 32, то читаем вот:
Собственная реализация IUnknown и подсчёт ссылок. И примеси.
Containers 1. Implementation of reference counting.
И ПОМНИМ о том, что можно сделать:
type IMyClassPtr = interface; TMyClass = class ... class function CreatePtr: IMyClassPtr; end;//TMyClass IMyClassPtr = interface function AsHolded: TMyClass; end;//IMyClassPtr
Ну и Generic'и конечно.
(+) Records.
(+) Implicit.
Мысль понятна?
Вот как-то так можно сделать AutoPtr:
type TAutoPtr<T> = record class operator Implicit(aValue: <T>): TAutoPtr<T>; class operator Explicit(const aValue: TAutoPtr<T>): <T>; end;//TAutoPtr
Комментариев нет:
Отправить комментарий