Partilhar via


Atributos de classe de armazenamento estendido C

Específico da Microsoft

Mais informações up-tosobre atributos de classe de armazenamento podem ser encontradas em __declspec (Referência C++).

A sintaxe de atributo estendida simplifica e padroniza as extensões específicas da Microsoft para a linguagem C. Os atributos de classe de armazenamento que usam sintaxe de atributo estendida incluem thread, naked, dllimporte dllexport.

A sintaxe de atributo estendida para especificar informações de classe de armazenamento usa a __declspec palavra-chave, que especifica que uma instância de um determinado tipo deve ser armazenada com um atributo de classe de armazenamento específico da Microsoft (thread, naked, dllimport, ou dllexport). Exemplos de outros modificadores de classe de armazenamento incluem as palavras-chave static e extern. No entanto, essas palavras-chave fazem parte do padrão ISO C e não são cobertas pela sintaxe de atributo estendida.

Sintaxe

storage-class-specifier:
__declspec ( extended-decl-modifier-seq ) /* Específico da Microsoft */

extended-decl-modifier-seq: /* Específico da Microsoft */
extended-decl-modifier optar por
extended-decl-modifier-seq extended-decl-modifier

extended-decl-modifier: /* Específico da Microsoft */
thread
naked
dllimport
dllexport

Espaço em branco separa os modificadores de declaração. Um extended-decl-modifier-seq pode estar vazio, neste caso, __declspec não tem efeito.

Os threadatributos , naked, dllimporte dllexport de classe de armazenamento são uma propriedade somente da declaração dos dados ou função à qual são aplicados. Eles não redefinem os atributos de tipo da função em si. O thread atributo afeta apenas os dados. O naked atributo afeta apenas funções. Os dllimport atributos e dllexport afetam funções e dados.

END Específico da Microsoft

Ver também

Declarações e tipos