关于VC2008+WIN7里面的Unicode影响的问题。
刚上手VC2008,本来用的是VC6.0 , 上手以后发现最大的问题就是Unicode了, 以前很多习惯的用法都被编译器报错。
先贴一段简单的代码
str.Format("%s\n",("Fibonacci sequence") );用的是Unicode 不是 Multibyte
这样的话系统就会报错 , 说
1>f:\mycode\testreadfile\testreadfile\testreadfile.cpp(15) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [4]”转换为“const wchar_t *”
改成str.Format("%s\n",_T("Fibonacci sequence") );
以后, 依然会报错,
把Unicode改成Multibyte以后才会通过。
现在想问的是怎么在Unicode的模式下把这个错误去掉..毕竟Unicode是主流, 每次都把Unicode关掉的话, 就太跟不上时代了...