龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

浅析c++ 宏 #val 在unicode下的使用

时间:2014-05-19 03:39来源:网络整理 作者:网络 点击:
分享到:
以下是对c++中宏#val在unicode下的使用方法进行了详细的分析介绍,需要的朋友可以参考下

#define CHECK(condition) cout<<check failed:<<#condition<<endl;

上面这句,当你 CHECK(myfunc()); 时,假设myfunc返回false,会输出:check failed:myfunc()

中,#condition 是把参数转换为字符串,这在打印log时,可以很方便的打印出函数名称等等

这个大家可能都知道了,太小儿科了,但是,当你在unicode下用的时候,很可能会出现乱码

解决的办法是 #condition 替换为 L## #conditon

代码如下:

#define CHECK(condition) cout<<check failed:<<L## #condition<<endl;

精彩图集

赞助商链接