C++:
การเขียนไปยังข้อผิดพลาดมาตรฐาน
วิธีการ:
ใน C++ การเขียนไปยังแสดงข้อผิดพลาดมาตรฐานสามารถทำได้โดยใช้สตรีม cerr
ซึ่งเป็นส่วนหนึ่งของไลบรารีมาตรฐาน ต่อไปนี้เป็นตัวอย่างพื้นฐาน:
#include <iostream>
int main() {
// เขียนไปยังการแสดงผลมาตรฐาน
std::cout << "นี่คือข้อความปกติ" << std::endl;
// เขียนไปยังแสดงข้อผิดพลาดมาตรฐาน
std::cerr << "นี่คือข้อความแสดงข้อผิดพลาด" << std::endl;
return 0;
}
ผลลัพธ์ตัวอย่าง:
นี่คือข้อความปกติ
นี่คือข้อความแสดงข้อผิดพลาด
ในกรณีนี้ ทั้งสองข้อความจะปรากฏขึ้นบนเทอร์มินัลของคุณโดยปกติ แต่คุณสามารถเปลี่ยนเส้นทางพวกเขาได้โดยแยกกันในเชลล์ เช่น คุณสามารถส่งผลลัพธ์มาตรฐานไปยังไฟล์ในขณะที่อนุญาตให้ข้อผิดพลาดแสดงบนหน้าจอ
สำหรับการบันทึกข้อความและการจัดการข้อผิดพลาดที่ซับซ้อนยิ่งขึ้น สามารถใช้ไลบรารีของบุคคลที่สามเช่น spdlog
หรือ boost.log
ได้ ไลบรารีเหล่านี้เสนอคุณสมบัติขั้นสูงสำหรับการบันทึกข้อความ รวมถึงการจัดรูปแบบ, ระดับของบันทึกข้อความ, และผลลัพธ์ของไฟล์
นี่คือวิธีที่คุณอาจใช้ spdlog
เพื่อเขียนข้อความแสดงข้อผิดพลาด:
#include "spdlog/spdlog.h"
int main() {
// เริ่มต้นใช้งาน spdlog
spdlog::info("นี่คือข้อความปกติ");
spdlog::error("นี่คือข้อความแสดงข้อผิดพลาด");
return 0;
}
หมายเหตุ: เพื่อใช้ spdlog
, คุณต้องเพิ่มมันเข้าไปในโปรเจกต์ของคุณ คุณทำได้โดยการคลอนที่เก็บข้อมูลจาก GitHub หรือใช้ตัวจัดการแพคเกจเช่น vcpkg
หรือ conan
จำไว้ว่า การตัดสินใจระหว่างการใช้สตรีมมาตรฐานโดยตรงหรือไลบรารีเช่น spdlog
ขึ้นอยู่กับความซับซ้อนของโปรแกรมแอพพลิเคชันของคุณและความต้องการเฉพาะของคุณเกี่ยวกับการจัดการข้อผิดพลาดและการล็อกข้อความ