Devo incorporar especificadores de exceção em c?
especificadores de exceção em c permitem que as funções indiquem se eles podem lançar exceções, como: // garantido para não lançar uma exceção barra vazia () arremesso (int); // pode lançar uma exceção do tipo int Void baz () arremesso (...); // pode lançar uma exceção de algum tipo não especificado
void foo() throw(); // guaranteed not to throw an exception
void bar() throw(int); // may throw an exception of type int
void baz() throw(...); // may throw an exception of some unspecified type
limitações em execução
compiladores não são stristly. O comportamento ideal envolveria erros de compilação para violar as especificações, mas isso não é garantido. Essa resposta dura pode não ser desejável em todos os casos. Especificadores
Além das preocupações acima, vários argumentos defendem o uso de especificadores de exceção:
compatibilidade com modelos especificações de exceção e de exceção
[e de exceção]pode atrapalhar o desenvolvimento do código de modelos devido a
especificações de exceção [e de exceçãopode atrapalhar o desenvolvimento do código de modelos devido a [compatíveis com exceção. Extensibilidade:
Especificando exceções esperadas pode limitar a evolução do código ao longo do tempo.
compatibilidade com código legado: lidar com o código legado dificulta a previsão de possíveis exceções, o que leva para o traseiro do programa. Reserva exceções para cenários excepcionais. No entanto, esse caso de uso é raro na prática.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3