对一句ATL代码的疑问
Cline 2008-10-29 03:41:45 static HRESULT WINAPI _Delegate(void* pv, REFIID iid, void** ppvObject, DWORD_PTR dw)
{
HRESULT hRes = E_NOINTERFACE;
IUnknown* p = *(IUnknown**)((DWORD_PTR)pv + dw);
if (p != NULL)
hRes = p->QueryInterface(iid, ppvObject);
return hRes;
}
如果把
IUnknown* p = *(IUnknown**)((DWORD_PTR)pv + dw);
写成
IUnknown* p = (IUnknown*)((DWORD_PTR)pv + dw);
有区别吗?