|
|
|
|
|
|
|
|
|
|
|
|
|
|
l |
Target
object inherits from
|
|
|
nsSupportsWeakReference
|
|
|
|
• |
nsISupportsWeakReference
– creates a “proxy” object which knows
|
|
|
|
when
target object is deleted
|
|
|
l |
Holder
of weak reference has a nsWeakPtr
|
|
|
// get a
weak version of a pointer
|
|
|
|
nsWeakPtr
weakSample = do_GetWeakReference(sample);
|
|
|
|
// later,
check if it is still there:
|
|
|
|
nsCOMPtr<nsISample>
sample2 =
|
|
|
|
do_QueryReferent(weakSample);
|
|