Say I有一个拥有
class Thing
{
public:
Thing()
{
D3D11CreateDevice(..., &device, ...);
}
~Thing()
{
device->Release();
}
private:
ID3D11Device* device;
};
根据我的理解,我可以使用<代码>_com_ptr_t<>/code>,确保删除该物体,而无需我明确打上<代码>Release(<>。 不过,问题在于,我可以列举该模板的正确概要。
我几乎找不到任何关于<代码>_com_ptr_t<>/code>的信息,我可以找到答案的最近一点是,(日本) 1。 在Syntax之后,我收到了编辑方面的错误:
private:
//ID3D11Device* device;
_com_ptr_t <_com_IIID<ID3D11Device, &__uuidof(ID3D11Device)>> device;
error C2143: syntax error : missing ; before <
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2238: unexpected token(s) preceding ;
error C2065: device : undeclared identifier
这样,我就能够利用这一方法将通信点从职能中退回,并确保它们在离开电线员范围时予以删除?