淺析c++ 宏 #val 在unicode下的使用
#define CHECK(condition) cout<<check failed:<<#condition<<endl;
上面這句宏,當(dāng)你 CHECK(myfunc()); 時(shí),假設(shè)myfunc返回false,會(huì)輸出:check failed:myfunc()
在宏中,#condition 是把參數(shù)轉(zhuǎn)換為字符串,這在打印log時(shí),可以很方便的打印出函數(shù)名稱(chēng)等等
這個(gè)大家可能都知道了,太小兒科了,但是,當(dāng)你在unicode下用的時(shí)候,很可能會(huì)出現(xiàn)亂碼
解決的辦法是 #condition 替換為 L## #conditon
#define CHECK(condition) cout<<check failed:<<L## #condition<<endl;
相關(guān)文章
使用kendynet構(gòu)建異步redis訪問(wèn)服務(wù)
這篇文章主要介紹了在kendynet上寫(xiě)的一個(gè)簡(jiǎn)單的redis異步訪問(wèn)接口,大家參考使用吧2014-01-01c語(yǔ)言中exit和return的區(qū)別點(diǎn)總結(jié)
小編今天給大家整理了關(guān)于c語(yǔ)言中exit和return的不同點(diǎn)及相關(guān)基礎(chǔ)知識(shí)點(diǎn),有興趣的朋友們可以跟著學(xué)習(xí)下。2021-10-10詳解C語(yǔ)言實(shí)現(xiàn)推箱子的基本功能
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)推箱子的基本功能的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-02-02C++可擴(kuò)展性與多線(xiàn)程超詳細(xì)精講
這篇文章主要介紹了C++可擴(kuò)展性與多線(xiàn)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-10-10C語(yǔ)言通過(guò)三步翻轉(zhuǎn)法實(shí)現(xiàn)單詞倒置詳解
這篇文章主要為大家分享了用三步翻轉(zhuǎn)法將一句話(huà)的單詞進(jìn)行倒置的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-05-05C++基于對(duì)話(huà)框的程序的框架實(shí)例
這篇文章主要介紹了C++基于對(duì)話(huà)框的程序的框架,以實(shí)例形式講述了C++對(duì)話(huà)框程序框架,有助于深入理解基于C++的Windows程序設(shè)計(jì),需要的朋友可以參考下2014-10-10C++中變量的類(lèi)型與作用域?qū)W習(xí)教程
這篇文章主要介紹了C++中變量的類(lèi)型與作用域,C++是面向?qū)ο蟮木幊陶Z(yǔ)言,一定要注意局部變量與全局變量的作用范圍,需要的朋友可以參考下2016-05-05