<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          spdlog快速的 C++ 日志庫(kù)

          聯(lián)合創(chuàng)作 · 2023-09-30 00:29

          spdlog 是一個(gè)快速的 C++ 日志庫(kù),只包含頭文件,兼容 C++11。

          特性:

          • 非???/p>

          • 只包含頭文件

          • 無(wú)需依賴第三方庫(kù)

          • 支持跨平臺(tái) - Linux / Windows on 32/64 bits

          • 支持多線程

          • 可對(duì)日志文件進(jìn)行循環(huán)輸出

          • 可每日生成日志文件

          • 支持控制臺(tái)日志輸出

          • 可選的異步日志

          • 支持日志輸出級(jí)別

          • 可自定義日志格式

          示例代碼:

          #include <iostream>
          #include "spdlog/spdlog.h"
          
          int main(int, char* [])
          {
              namespace spd = spdlog;
          
              try
              {
                  std::string filename = "spdlog_example";
                  auto console = spd::stdout_logger_mt("console");
                  console->info("Welcome to spdlog!") ;
                  console->info() << "Creating file " << filename << "..";
          
                  auto file_logger = spd::rotating_logger_mt("file_logger", filename, 1024 * 1024 * 5, 3);
                  file_logger->info("Log file message number", 1);
          
                  for (int i = 0; i < 100; ++i)
                  {
                      auto square = i*i;
                      file_logger->info() << i << '*' << i << '=' << square << " (" << "0x" << std::hex << square << ")";
                  }
          
                  // Change log level to all loggers to warning and above
                  spd::set_level(spd::level::WARN);
                  console->info("This should not be displayed");
                  console->warn("This should!");
                  spd::set_level(spd::level::INFO);
          
                  // Change format pattern to all loggers
                  spd::set_pattern(" **** %Y-%m-%d %H:%M:%S.%e %l **** %v");
                  spd::get("console")->info("This is another message with different format");
              }
              catch (const spd::spdlog_ex& ex)
              {
                  std::cout << "Log failed: " << ex.what() << std::endl;
              }
              return 0;
          }
          瀏覽 39
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  在线观看免费黄片网站 | 久久加勅比 | 色婷婷视频一区二区 | 精品国产精品一区二区金廿莲 | 我要看亚洲黄色片一级 |