Partilhar via


atributo const

A palavra-chave const modifica o tipo de declaração de tipo ou o tipo de um parâmetro de função, impedindo que o valor varie.

const const-type identifier = const-expression ;

[ typedef [ , type-attribute-list ] ] const const-type declarator-list;

[ typedef [ , type-attribute-list ] ] pointer-type const declarator-list;

[ [ function-attr-list ] ] type-specifier [ ptr-decl ] function-name(
    [ [ parameter-attribute-list ] ] ) const; 

const-type [declarator], [ [ parameter-attribute-list ] ] pointer-type const [declarator], ...);

Parâmetros

Tipo const

Especifica um inteiro, carácter, cadeia ou tipo booleano válido em MIDL. Tipos válidos de MIDL incluem small, short, long, char, char *, wchar_t, wchar_t *, byte, byte * e void *. Os tipos inteiros e de carácter podem ser com ou sem sinal.

identificador

Especifica um identificador MIDL válido. Os identificadores MIDL válidos consistem em até 31 caracteres alfanuméricos e/ou sublinhado e devem começar com um carácter alfabético ou sublinhado.

const-expressão

Especifica uma expressão, identificador ou constante numérica ou de carácter apropriada para o tipo especificado: literais inteiros constantes ou expressões inteiras constantes para constantes inteiras; Expressões booleanas que podem ser calculadas na compilação para tipos booleanos; constantes de carácter único para tipos de personagem; e constantes de cadeia para tipos de [cadeia]. O tipo void * só pode ser inicializado para NULL.

Tipo-Atributo-Lista

Especifica um ou mais atributos que se aplicam ao tipo.

tipo ponteiro

Especifica um tipo válido de ponteiro MIDL.

Declarador e Lista de Declaradores

Especifica declaradores C padrão, como identificadores, declaradores de ponteiro e declaradores de array. Para mais informações, consulte Atributos de Array e Sized-Pointer, Arrays e Arrays e Ponteiros. A lista de declaradores consiste em um ou mais declaradores, separados por vírgulas. O identificador do nome do parâmetro no declarador da função é opcional.

function-attr-list

Especifica zero ou mais atributos que se aplicam à função. Atributos válidos da função são [callback],[local]; o atributo do ponteiro [ref],[único] ou [ptr]; e os atributos de uso [string],[ignorar] e [context_handle].

Especificador de tipo

Especifica um identificador de base_type, struct, union, tipo enum ou tipo. Uma especificação de armazenamento opcional pode preceder o especificador de tipo.

PTR-DECL

Especifica declaradores de zero ou mais ponteiros. Um declarador de ponteiro é o mesmo que o declarador de ponteiro usado em C. É construído a partir do * designador, modificadores como far e do qualificador const.

Nome da função

Especifica o nome do procedimento remoto.

Parameter-attribute-list

Especifica atributos direcionais zero ou mais, atributos de campo, atributos de utilização e atributos de ponteiro apropriados para o tipo de parâmetro especificado. Separa múltiplos atributos com vírgulas.

Observações

O MIDL permite-lhe declarar tipos constantes de inteiro, carácter, cadeia de caracteres e Booleanos no corpo da interface do ficheiro IDL. As declarações do tipo const são reproduzidas no ficheiro de cabeçalho gerado como #define diretivas.

Os compiladores IDL DCE não suportam expressões constantes. Portanto, esta funcionalidade não está disponível quando utiliza o compilador MIDL /osf .

Uma constante previamente definida pode ser usada como valor atribuído a uma constante subsequente. O valor de uma expressão integral constante é automaticamente convertido para o respetivo tipo inteiro de acordo com as regras de conversão de C.

O valor de uma constante de carácter deve ser um carácter ASCII com aspas simples. Quando a constante do carácter é o próprio carácter de aspas simples ('), o carácter de barra inversa (\) deve preceder o carácter de aspas simples, como em \'.

O valor de uma constante por cadeia de caracteres deve ser uma cadeia com aspas duplas. Dentro de uma cadeia, o carácter com barra inversa (\) deve preceder um carácter literal de aspas duplas ( " ), como em \". Dentro de uma cadeia, o carácter de barra inversa (\) representa um carácter de escape. As constantes da cadeia podem consistir em até 255 caracteres.

O valor NULL é o único valor válido para constantes do tipo nulo *. Quaisquer atributos associados à declaração const são ignorados.

O compilador MIDL não verifica erros de intervalo na inicialização de const . Por exemplo, quando especifica "const short x = 0xFFFFFFFF;", o compilador MIDL não reporta erro e o inicializador é reproduzido no ficheiro de cabeçalho gerado.

Exemplos

const void *  p1        = NULL; 
const char    my_char1  = 'a'; 
const char    my_char2  = my_char1; 
const wchar_t my_wchar3 = L'a'; 
const wchar_t * pszNote = L"Note"; 
const unsigned short int x = 123; 
 
typedef [string] const char *LPCSTR; 
 
HRESULT GetName([out] wchar_t * const pszName );

Consulte também

Matrizes

Tipos de Base MIDL

Booleano

Byte

Chamada de retorno

char

context_handle

enum

Ficheiro de Definição de Interface (IDL)

ignorar

Local

longo

/osf

ptr

Árbitro

Short

assinado

pequeno

Corda

struct

União

Único

não assinado

vazio

wchar_t