何时使用前缀"我"对于STRUCTS,directx11中的课程?

时间:2016-07-14 02:33:55

标签: c++ class struct com directx

我很难理解何时加入前缀"我"对于directx11 STRUCTS和COM对象类?

例如:

1)IDXGI与DXGI 2)ID3D11与D3D11

我似乎无法弄明白何时使用什么,请帮助。

1 个答案:

答案 0 :(得分:1)

DirectX接口使用组件对象模型(COM)。

并非COM的所有方面都用于DirectX,但它遵循使用“I”来表示接口的约定,接口派生自IUnknown,它通过{{1来处理引用计数和接口的“转换”接口设计用于直接映射到C ++抽象虚拟类。

COM的DirectX风格通常被非正式地称为“COM lite”。主要区别在于,当设备对象被销毁时,从设备创建的任何“子”对象的生命周期立即无效。此外,'set'对象的引用计数也不会增加,只需将它们绑定到渲染管道即可。

请参阅The Component Object Model

您应该强烈考虑使用ComPtr智能指针来处理Direct3D接口。它让生活变得更轻松。

  

顺便说一下,您可能需要花些时间阅读DirectX Tool Kit tutorials,其中涵盖了Direct3D的大部分基础知识。