Puedes crear tus propias clases de excepción para representar errores o situaciones anómalas particulares en tu programa. Aquí tienes un ejemplo de cómo definir y usar excepciones personalizadas en C++:
#include <iostream>
#include <stdexcept>
class MiExcepcion : public std::exception {
public:
const char* what() const noexcept override {
return "Esta es mi excepción personalizada";
}
};
int main() {
try {
throw MiExcepcion();
} catch (const std::exception& e) {
std::cout << "Error: " << e.what() << std::endl;
}
return 0;
}
#include <iostream>
#include <stdexcept>
class MiExcepcion : public std::exception {
public:
MiExcepcion(const char* mensaje) : mensaje_(mensaje) {}
const char* what() const noexcept override {
return mensaje_.c_str();
}
private:
std::string mensaje_;
};
double dividir(double a, double b) {
if (b == 0) {
throw MiExcepcion("División por cero no permitida");
}
return a / b;
}
int main() {
try {
double resultado = dividir(10.0, 0.0);
std::cout << "Resultado: " << resultado << std::endl;
} catch (const MiExcepcion& e) {
std::cout << "Error: " << e.what() << std::endl;
}
return 0;
}
Pueder ir al artículo principal:
Códigos Sencillos hechos en C++