我刚刚开始使用适用于 Windows 8 应用程序的 DirectX 11.1,例如,我得到了以下 ComPtr:
ComPtr<ID3D11Buffer> constantBuffer;
&constantBuffer
我想知道的是,使用和有什么区别constantBuffer.GetAddressOf()
?
有时它们都可以正常工作,但有时使用&constantBuffer
会导致我的程序因访问冲突而崩溃。
我刚刚开始使用适用于 Windows 8 应用程序的 DirectX 11.1,例如,我得到了以下 ComPtr:
ComPtr<ID3D11Buffer> constantBuffer;
&constantBuffer
我想知道的是,使用和有什么区别constantBuffer.GetAddressOf()
?
有时它们都可以正常工作,但有时使用&constantBuffer
会导致我的程序因访问冲突而崩溃。
你读过文档吗?
GetAddressOf - 检索 ptr_ 数据成员的地址,其中包含指向此 ComPtr 表示的接口的指针。
Operator& - 释放与此 ComPtr 对象关联的接口,然后检索 ComPtr 对象的地址。