日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 程序喵大人

大家應(yīng)該都知道,Boost是個(gè)準(zhǔn)標(biāo)準(zhǔn)庫,一般Boost里比較先進(jìn)的模塊可能會(huì)進(jìn)下一代的C++標(biāo)準(zhǔn)。


因?yàn)槲易罱陂_發(fā)Log相關(guān)的功能,所以業(yè)余時(shí)間也在看看市面上的Log模塊是怎么設(shè)計(jì)的。


關(guān)于Log,想必大多數(shù)C++開發(fā)都在使用glog或者spdlog,最近我發(fā)現(xiàn)Boost中也有個(gè)Log模塊,于是看了看,發(fā)現(xiàn)功能好強(qiáng)大。


Log模塊整體設(shè)計(jì)如圖:

圖片來源于:https://www.boost.org/doc/libs/1_79_0/libs/log/doc/html/log/design.html


圖中可以發(fā)現(xiàn),整個(gè)log的模塊劃分了多層架構(gòu),source、core、sink。

可以配置多個(gè)source,還可以配置多個(gè)sink。


直接看下它的編譯與使用:

首先去boost官網(wǎng)https://github.com/boostorg/boost下載源碼。

之后執(zhí)行bootstrap.sh腳本后會(huì)生成b2可執(zhí)行程序,執(zhí)行./b2 再install就ok。


那想單獨(dú)使用Log模塊怎么辦,這里拿example里的main.cpp舉例:

可以使用這個(gè)命令來編譯:


clang++ -std=c++11 -DBOOST_LOG_DYN_LINK main.cpp -lboost_log -lpthread -lboost_log_setup -lboost_thread -lboost_system


然后再執(zhí)行:


大家最好對(duì)照著示例代碼:https://github.com/boostorg/log/blob/fa675cca2b58d6c087fc63de56e894fa7fb607f3/example/advanced_usage/main.cpp


如果自己項(xiàng)目中想使用Log的話,個(gè)人認(rèn)為可以在spdlog或者Boost中二選一,如果僅使用log,而不使用其他功能,可以使用spdlog。如果項(xiàng)目中本身就依賴了Boost,可以考慮直接使用boost中的log。


更多內(nèi)容在 一個(gè)優(yōu)質(zhì)的C++學(xué)習(xí)圈 里,來一起鉆研C++和Rust吧。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉