Interfaces (ATL)
Una interfaz es la forma en que un objeto expone su funcionalidad al mundo exterior. En COM, una interfaz es una tabla de punteros (como una tabla virtual de C++) dirigidos a funciones implementadas por el objeto. La tabla representa la interfaz, y las funciones a las que apunta son los métodos de dicha interfaz. Un objeto puede exponer tantas interfaces como elija.
Cada interfaz se basa en la interfaz COM fundamental, IUnknown. Los métodos de IUnknown
permiten la navegación a otras interfaces expuestas por el objeto.
Además, a cada interfaz se le asigna un Id. de interfaz único (IID). Esta unicidad facilita la compatibilidad con el control de versiones de la interfaz. Una nueva versión de una interfaz es simplemente una nueva interfaz, con un nuevo IID.
Nota:
Los IID para las interfaces COM y OLE estándar están predefinidos.