由于函数的返回值用于错误消息,函数如何将必要的信息返回给调用者?
问问题
125 次
1 回答
1
因此,如果您查看该链接,您会注意到它有一些参数标记Out
为重要,因为这表示将返回给调用者的内容。
HRESULT CreateDevice(
[in] UINT Adapter,
[in] D3DDEVTYPE DeviceType,
[in] HWND hFocusWindow,
[in] DWORD BehaviorFlags,
[in, out] D3DPRESENT_PARAMETERS *pPresentationParameters,
[out, retval] IDirect3DDevice9 **ppReturnedDeviceInterface
);
在上面的示例中(从 MSDN 链接复制和粘贴),您会注意到一个参数ppReturnedDeviceInterface
被标记为正在**
或指向指针的指针,调用者将传入其指针的地址并返回一个指针地址。此外,D3DPRESENT_PARAMETERS
传入的结构pPresentationParameters
将在返回时更新,如out
注释所述。前任:
IDirect3DDevice9 *pDevice = NULL;
HRESULT hr = pD3D->CreateDevice(
D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
hwnd,
pPresentationParams,
&pDevice);
if(SUCCEEDED(hr))
{
//pDevice should be non null at this point
}
于 2013-07-01T14:13:36.990 回答