- 1
- 2
- 3
- 4
- 5
- 6
https://habr.com/ru/post/219685/
|
->
Плохо выразился. В старых не надо объявлять поле типа Pointer, в старых объявляется поле интерфейсного типа, а при присвоении ему значения делается приведение: Pointer(FInterfaceField) := Pointer(InterfaceVariable);
Так делали, чтобы получить weak-ссылку и при этом не заниматься многочисленными приведением Pointer к интерфейсу.
Не будет никакого AV, если вы руками присвоите nil в деструкторе, тоже через приведение к Pointer.