atributo de interface

A interface palavra-chave especifica o nome da interface. O nome da interface deve ser fornecido no arquivo IDL e no ACF.

[ 
    interface-attribute-list 
] 
interface interface-name [ : base-interface ]
{
}

typedef interface interface-name declarator-list

Parâmetros

interface-attribute-list

Especifica atributos que se aplicam à interface como um todo. Os atributos de interface válidos para um arquivo IDL incluem [ponto de extremidade], [local], [objeto], [pointer_default], [uuid] e [versão]. Os atributos de interface válidos para um ACF incluem [codificação], [decodificar], [auto_handle] ou [implicit_handle], e [código] ou [nocode].

nome da interface

Especifica o nome da interface. O nome da interface deve ser um nome exclusivo e deve começar com um caractere alfabético ou sublinhado.

interface base

Especifica o nome de uma interface da qual essa interface derivada herda funções membro, códigos status e atributos de interface. A interface derivada não herda definições de tipo. Para fazer isso, use o palavra-chave de importação para importar o arquivo IDL da interface base.

declarator-list

Especifica declaradores C padrão, como identificadores, declaradores de ponteiro e declaradores de matriz. Para obter mais informações, consulte Atributos de matriz e Sized-Pointer, matrizes e matrizes e ponteiros. A lista de declaradores consiste em um ou mais declaradores, separados por vírgulas.

Comentários

Os nomes de interface no arquivo IDL e acF devem ser os mesmos, exceto quando você usa a opção /acf do compilador MIDL.

O nome da interface forma a primeira parte do nome das estruturas de dados de identificador de interface que são parâmetros para as funções de tempo de execução RPC. Para obter mais informações, consulte RPC_IF_HANDLE.

Se o cabeçalho da interface incluir o atributo [object] para indicar uma interface COM, ele também deverá incluir o atributo [uuid] e deve especificar a interface COM base da qual ela é derivada. Para obter mais informações sobre interfaces COM, consulte [objeto].

Você também pode usar a interface palavra-chave com o typedef palavra-chave para definir um tipo de dados de interface.

Exemplos

/* 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;

Confira também

Arquivo de Configuração de Aplicativo (ACF)

Extremidade

Arquivo IDL (Definição de Interface)

Local

Objeto

pointer_default

RPC_IF_HANDLE

Typedef

uuid

version