C++:
Pisanie do standardowego błędu
Jak to zrobić:
W C++, pisanie do standardowego błędu można osiągnąć za pomocą strumienia cerr
, który jest częścią standardowej biblioteki. Oto podstawowy przykład:
#include <iostream>
int main() {
// Pisanie do standardowego wyjścia
std::cout << "To jest zwykła wiadomość." << std::endl;
// Pisanie do standardowego błędu
std::cerr << "To jest wiadomość o błędzie." << std::endl;
return 0;
}
Przykładowe wyjście:
To jest zwykła wiadomość.
To jest wiadomość o błędzie.
W tym przypadku obie wiadomości zwykle pojawią się na twoim terminalu, ale możesz je przekierować oddzielnie w powłoce. Na przykład, można wysłać standardowe wyjście do pliku, jednocześnie pozwalając, aby błędy były wyświetlane na ekranie.
Do bardziej zaawansowanego rejestrowania i obsługi błędów można użyć bibliotek stron trzecich, takich jak spdlog
lub boost.log
. Te biblioteki oferują zaawansowane funkcje do rejestrowania, w tym formatowanie, poziomy logowania i wyjście do pliku.
Oto jak możesz użyć spdlog
do zapisania wiadomości o błędzie:
#include "spdlog/spdlog.h"
int main() {
// Inicjalizacja spdlog
spdlog::info("To jest zwykła wiadomość.");
spdlog::error("To jest wiadomość o błędzie.");
return 0;
}
Uwaga: Aby użyć spdlog
, musisz dodać go do swojego projektu. Możesz to zrobić klonując repozytorium z GitHuba lub używając menedżera pakietów jak vcpkg
lub conan
.
Pamiętaj, wybór między bezpośrednim używaniem strumieni standardowych a biblioteką taką jak spdlog
zależy od złożoności twojej aplikacji i twoich konkretnych potrzeb dotyczących obsługi błędów i rejestrowania.