add conversion to unspecified_bool_type to allow writing if(weakref)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51109 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2008-01-08 14:23:20 +00:00
parent 070895565e
commit 1e9192d04c

View File

@@ -25,6 +25,14 @@ public:
virtual ~wxWeakRef() { Assign(NULL); } virtual ~wxWeakRef() { Assign(NULL); }
// test for pointer validity: defining conversion to unspecified_bool_type
// and not more obvious bool to avoid implicit conversions to integer types
typedef T *(wxWeakRef<T>::*unspecified_bool_type)() const;
operator unspecified_bool_type() const
{
return m_pobj ? &wxWeakRef<T>::get : NULL;
}
T * get() const T * get() const
{ {
return m_pobj; return m_pobj;