Can someone provide an explanation of a weak reference in Delphi?
I noticed that the concept is often mentioned in some library/framework source code I scrutini
In a most general case a strong reference
controls the lifetime of a referenced instance while a weak reference
does not. The term weak reference
can be used in context of a garbage collector, reference counted interfaces or common objects.
For example, a Delphi form hold the references to all its controls; these references can be called strong because when a form is destroyed its controls are also destroyed. On the other hand, a Delphi form's control has a reference to a form it belongs to. This reference can be call weak because it does not controls a form's lifetime in any way.