Programar em C++/Exceções
Aspeto
Esta página precisa ser reciclada (discuta). Ao melhorá-la, você estará ajudando o Wikilivros. |
Uma exception é um erro que ocorre em tempo de execução.
Podemos lidar com estes erros e criar rotinas para muitos deles, o que nos permite automatizar muitos erros que antes teriam de ser emendados à mão.
Standard Exceptions
[editar | editar código-fonte]A biblioteca de C++ contém exceptions já definidas para erros comuns. Elas são divididas em dois setores: Erros lógicos e Erros de tempo de execução.
Aqui vemos um exemplo de código usando exceptions de erros lógicos:
#include <iostream>
#include <stdexcept> // std::invalid_argument
#include <bitset>
#include <string>
int main (void)
{
try
{
// O construtor de bitset joga uma invalid_argument se inicializado com uma
// string contendo caracteres diferentes de 0 e 1
std::bitset<5> mybitset (std::string("01234"));
}
catch ( const std::invalid_argument& ia )
{
std::cerr << "Invalid argument: " << ia.what() << '\n';
}
return 0;
}