예제 #1
0
	~ComPtr()
	{
		if (m_ptr)
		{
			m_ptr->Release();
		}
	}
예제 #2
0
파일: ComPtr.hpp 프로젝트: 373137461/OBS
	inline void Clear()
	{
		if (ptr) {
			ptr->Release();
			ptr = NULL;
		}
	}
예제 #3
0
	inline void Clear()
	{
		if (ptr) {
			ptr->Release();
			ptr = nullptr;
		}
	}
예제 #4
0
파일: ComPtr.hpp 프로젝트: 373137461/OBS
	inline void Replace(T *p)
	{
		if (ptr != p) {
			if (p)   p->AddRef();
			if (ptr) ptr->Release();
			ptr = p;
		}
	}
예제 #5
0
	inline ULONG Release()
	{
		ULONG ref;

		if (!ptr) return 0;
		ref = ptr->Release();
		ptr = nullptr;
		return ref;
	}
예제 #6
0
 ~AutoCOMPtr() {
    if (m_ptr) {
       m_ptr->Release();
    }
 }
예제 #7
0
파일: ComPtr.hpp 프로젝트: 373137461/OBS
	inline void Kill()
	{
		if (ptr)
			ptr->Release();
	}