Sobes.tech
Junior — Middle

Como pode processar e guardar informações sobre exceções na sua aplicação?

sobes.tech IA

Resposta da IA

Em C++, para lidar com exceções, utiliza-se o mecanismo try-catch. No bloco try, coloca-se o código que pode gerar uma exceção, e no bloco catch, o código para tratar essa exceção. Para guardar informações sobre as exceções, pode-se registrar em um arquivo ou sistema de logs os detalhes do erro, como a mensagem da exceção, a pilha de chamadas ou o código de erro.

Exemplo:

#include <iostream>
#include <fstream>
#include <exception>

void logException(const std::exception& e) {
    std::ofstream logFile("error.log", std::ios::app);
    if (logFile.is_open()) {
        logFile << "Exceção capturada: " << e.what() << std::endl;
    }
}

int main() {
    try {
        throw std::runtime_error("Erro de execução");
    } catch (const std::exception& e) {
        logException(e);
        std::cerr << "Exceção tratada: " << e.what() << std::endl;
    }
    return 0;
}

Dessa forma, as exceções são capturadas, e as informações sobre elas são salvas para análise posterior.