Home | History | Annotate | Download | only in Common

Lines Matching refs:_p

16   T* _p;

18 CMyComPtr(): _p(NULL) {}
19 CMyComPtr(T* p) throw() { if ((_p = p) != NULL) p->AddRef(); }
20 CMyComPtr(const CMyComPtr<T>& lp) throw() { if ((_p = lp._p) != NULL) _p->AddRef(); }
21 ~CMyComPtr() { if (_p) _p->Release(); }
22 void Release() { if (_p) { _p->Release(); _p = NULL; } }
23 operator T*() const { return (T*)_p; }
24 // T& operator*() const { return *_p; }
25 T** operator&() { return &_p; }
26 T* operator->() const { return _p; }
31 if (_p)
32 _p->Release();
33 _p = p;
36 T* operator=(const CMyComPtr<T>& lp) { return (*this = lp._p); }
37 bool operator!() const { return (_p == NULL); }
38 // bool operator==(T* pT) const { return _p == pT; }
42 _p = p2;
46 T* pt = _p;
47 _p = NULL;
53 return ::CoCreateInstance(rclsid, pUnkOuter, dwClsContext, iid, (void**)&_p);
61 ATLASSERT(_p == NULL);
63 hr = ::CoCreateInstance(clsid, pUnkOuter, dwClsContext, __uuidof(T), (void**)&_p);
70 return _p->QueryInterface(iid, (void**)pp);