C++:
Scrivere sull'errore standard
Come fare:
In C++, scrivere su standard error può essere realizzato utilizzando il flusso cerr
, che fa parte della libreria standard. Ecco un esempio base:
#include <iostream>
int main() {
// Scrivere su standard output
std::cout << "Questo è un messaggio normale." << std::endl;
// Scrivere su standard error
std::cerr << "Questo è un messaggio di errore." << std::endl;
return 0;
}
Output di esempio:
Questo è un messaggio normale.
Questo è un messaggio di errore.
In questo caso, entrambi i messaggi appariranno tipicamente sul tuo terminale, ma puoi reindirizzarli separatamente in una shell. Ad esempio, puoi inviare l’output standard a un file mentre permetti agli errori di essere visualizzati sullo schermo.
Per una gestione degli errori e un logging più avanzati, si possono impiegare librerie di terze parti come spdlog
o boost.log
. Queste librerie offrono funzionalità avanzate per il logging, inclusi formattazione, livelli di log e output su file.
Ecco come potresti usare spdlog
per scrivere un messaggio di errore:
#include "spdlog/spdlog.h"
int main() {
// Inizializzare spdlog
spdlog::info("Questo è un messaggio normale.");
spdlog::error("Questo è un messaggio di errore.");
return 0;
}
Nota: Per utilizzare spdlog
, è necessario aggiungerlo al tuo progetto. Puoi farlo clonando il repository da GitHub o utilizzando un gestore di pacchetti come vcpkg
o conan
.
Ricorda, la scelta tra l’uso diretto dei flussi standard o di una libreria come spdlog
dipende dalla complessità della tua applicazione e dalle tue esigenze specifiche riguardo la gestione degli errori e il logging.