interface (attribut)
Le mot clé interface spécifie le nom de l’interface. Le nom de l’interface doit être fourni à la fois dans le fichier IDL et dans le CCP.
[
interface-attribute-list
]
interface interface-name [ : base-interface ]
{
}
typedef interface interface-name declarator-list
Paramètres
-
interface-attribut-List
-
Spécifie des attributs qui s’appliquent à l’ensemble de l’interface. Les attributs d’interface valides pour un fichier IDL incluent le [ point de terminaison ] , l' [ objet local ] , l' [ objet ] , le [ pointeur _ par défaut ] , l' [ UUID ] et la [ version ] . Les attributs d’interface valides pour un CCP incluent l' [ encodage ] , le [ décodage ] , le [ _ handle automatique ] ou le [ _ handle implicite ] , ainsi que le [ code ] ou le [ nocode ] .
-
nom de l’interface
-
Spécifie le nom de l’interface. Le nom de l’interface doit être un nom unique et doit commencer par un caractère alphabétique ou un trait de soulignement.
-
interface de base
-
Spécifie le nom d’une interface à partir de laquelle cette interface dérivée hérite des fonctions membres, des codes d’État et des attributs d’interface. L’interface dérivée n’hérite pas des définitions de type. Pour ce faire, utilisez le mot clé Import pour importer le fichier IDL de l’interface de base.
-
déclarateur-liste
-
Spécifie les déclarateurs C standard, tels que les identificateurs, les déclarateurs de pointeurs et les déclarateurs de tableau. Pour plus d’informations, consultez tableau et Sized-Pointer attributs, tableauxet pointeurs. La liste déclarateur se compose d’un ou de plusieurs déclarateurs, séparés par des virgules.
Notes
Les noms d’interface dans le fichier IDL et ACF doivent être identiques, sauf lorsque vous utilisez le commutateur du compilateur MIDL /ACF.
Le nom d’interface constitue la première partie du nom des structures de données de handle d’interface qui sont des paramètres pour les fonctions runtime RPC. Pour plus d’informations, consultez RPC _ if _ descripteur.
Si l’en-tête d’interface inclut l' [ ] attribut d’objet pour indiquer une interface com, il doit également inclure l' [ attribut UUID ] et doit spécifier l’interface com de base à partir de laquelle elle est dérivée. Pour plus d’informations sur les interfaces COM, consultez [ objet ] .
Vous pouvez également utiliser le mot clé interface avec le mot clé typedef pour définir un type de données d’interface.
Exemples
/* use of interface keyword in IDL file for an RPC interface */
[
uuid (00000000-0000-0000-0000-000000000000),
version (1.0)
]
interface remote_if_2
{
// Interface definition statements.
}
/* use of interface keyword in ACF for an RPC interface */
[
implicit_handle( handle_t xa_bhandle )
]
interface remote_if_2
{
// Attribute configuration statements.
}
/* use of interface keyword in IDL file for a COM interface */
[
object, uuid (00000000-0000-0000-0000-000000000000)
]
interface IDerivedInterface : IBaseInterface
{
import "base.idl"
Save();
}
/* use of interface keyword to define an interface pointer type */
typedef interface IStorage *LPSTORAGE;