IObjectWithBackReferences 接口 (shobjidl_core.h)

提供与对象持有的反向引用交互的方法。

继承

IObjectWithBackReferences 接口继承自 IUnknown 接口。 IObjectWithBackReferences 还具有以下类型的成员:

方法

IObjectWithBackReferences 接口包含以下方法。

 
IObjectWithBackReferences::RemoveBackReferences

删除对象保留的所有反向引用。

注解

何时使用

当对象包含对具有父对象的反向引用的子对象的向前引用时,可能会发生循环引用。 若要中断此圆圈,父对象需要跟踪子对象的反向引用。

何时实现

此接口应由 Shell 数据源对象 (实现 IShellFolder) 的对象实现,这些对象以可能导致引用周期的方式保存对其他对象的引用。 例如,维护对作为绑定操作结果缓存的其他数据源对象的引用的对象应实现此接口。

此接口在 Service Pack 1 (SP1) 的 Windows Vista 中可用,但在 Windows 7 之前未在公共标头中声明。 为了在 Windows Vista SP1 中使用,以下接口定义语言 (IDL) 片段描述了此接口,包括其 IID。

object,
    uuid(321a6a6a-d61f-4bf3-97ae-14be2986bb36),
    pointer_default(unique)
]
interface IObjectWithBackReferences : IUnknown
{
    HRESULT RemoveBackReferences();
}

以下 C++ 片段可用于启用对此接口的访问。

struct 
    __declspec(uuid("321a6a6a-d61f-4bf3-97ae-14be2986bb36")) 
    __declspec(novtable)
IObjectWithBackReferences : public IUnknown
{
    public:
        virtual HRESULT __stdcall RemoveBackReferences() = 0;
};

要求

要求
最低受支持的客户端 Windows Vista SP1、Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 shobjidl_core.h (包括 Shobjidl.h)