Partilhar via


nothrow (C++)

Específico da Microsoft

Um atributo __declspec estendido que pode ser usado na declaração de funções.

return-type __declspec(nothrow) [call-convention] function-name ([argument-list])

Comentários

Esse atributo diz ao compilador que a função declarada, e as funções que ela chama nunca lançam uma exceção. Com o modelo de tratamento de exceções síncronas, agora padrão, o compilador pode eliminar a mecânica de acompanhar o tempo de vida útil de determinados objetos desenroláveis nessa função e reduzir significativamente o tamanho do código. Dada a política de pré-processador a seguir, as três declarações de função abaixo são equivalentes:

#define WINAPI __declspec(nothrow) __stdcall 

void WINAPI f1();
void __declspec(nothrow) __stdcall f2();
void __stdcall f3() throw();

Usar void __declspec(nothrow) __stdcall f2(); tem a vantagem de poder usar uma definição de API, como ilustrado pela instrução #define, para especificar nothrow facilmente em um conjunto de funções. A terceira declaração, void __stdcall f3() throw(); é a sintaxe definida pelo padrão C++.

Consulte Tratamento de exceções síncronas para obter mais informações.

FIM de Específico da Microsoft

Consulte também

Referência

__declspec

Palavras-chave C++