Lines Matching refs:_p
12 T* _p;
14 CMyComPtr(): _p(NULL) {}
15 CMyComPtr(T* p) throw() { if ((_p = p) != NULL) p->AddRef(); }
16 CMyComPtr(const CMyComPtr<T>& lp) throw() { if ((_p = lp._p) != NULL) _p->AddRef(); }
17 ~CMyComPtr() { if (_p) _p->Release(); }
18 void Release() { if (_p) { _p->Release(); _p = NULL; } }
19 operator T*() const { return (T*)_p; }
20 // T& operator*() const { return *_p; }
21 T** operator&() { return &_p; }
22 T* operator->() const { return _p; }
27 if (_p)
28 _p->Release();
29 _p = p;
32 T* operator=(const CMyComPtr<T>& lp) { return (*this = lp._p); }
33 bool operator!() const { return (_p == NULL); }
34 // bool operator==(T* pT) const { return _p == pT; }
38 _p = p2;
42 T* pt = _p;
43 _p = NULL;
49 return ::CoCreateInstance(rclsid, pUnkOuter, dwClsContext, iid, (void**)&_p);
57 ATLASSERT(_p == NULL);
59 hr = ::CoCreateInstance(clsid, pUnkOuter, dwClsContext, __uuidof(T), (void**)&_p);
67 return _p->QueryInterface(iid, (void**)pp);