Skip to content

Latest commit

 

History

History
23 lines (17 loc) · 1.18 KB

interfaces-atl.md

File metadata and controls

23 lines (17 loc) · 1.18 KB
description title ms.date ms.topic helpviewer_keywords ms.assetid
Learn more about: Interfaces (ATL)
Interfaces (ATL)
11/04/2016
reference
COM interfaces
interfaces, COM
de6c8b12-6230-4fdc-af66-a28b91d5ee55

Interfaces (ATL)

An interface is the way in which an object exposes its functionality to the outside world. In COM, an interface is a table of pointers (like a C++ vtable) to functions implemented by the object. The table represents the interface, and the functions to which it points are the methods of that interface. An object can expose as many interfaces as it chooses.

Each interface is based on the fundamental COM interface, IUnknown. The methods of IUnknown allow navigation to other interfaces exposed by the object.

Also, each interface is given a unique interface ID (IID). This uniqueness makes it easy to support interface versioning. A new version of an interface is simply a new interface, with a new IID.

Note

IIDs for the standard COM and OLE interfaces are predefined.

See also

Introduction to COM
COM Objects and Interfaces