std的MCBS和UNICODE有关问题
std的MCBS和UNICODE问题
在VC上编程序,
对于Windows API和C/C++运行时库
如果使用MCBS,所有字符串都是char*
如果使用UNICODE,所有字符串都是wchar_t*
如果需要分别编译为MCBS和UICODE,可以用TCHAR*
其中MFC中的CString也受MCBS/UNICODE宏控制,相当于TCHAR*
然而在std中,
MCBS用string
UNICODE用wstring
另外io流与此类似.
好象没有一个可以同时适应MCBS和UNICODE的东西.
当然可以自己定义
#ifdef UNICODE
#define mystring string
#else
#define mystring wstring
#endif
然而考虑到还有IO流等一整套,
终究太不爽.
大家有什么好方法?
------解决方案--------------------
没什么好的办法,还是用unicode宏自己定义吧。
------解决方案--------------------
恩,我就是宏定义,这不挺好的吗
------解决方案--------------------
期待有好方法
------解决方案--------------------
自己定义,
用VC的想的就是要多一点
------解决方案--------------------
都用Unicode吧,大势所趋
------解决方案--------------------
unicode吧
------解决方案--------------------
我也是自己宏定义tstring.
------解决方案--------------------
也是自己作~ -,-
一般尽量都用unicode
------解决方案--------------------
好像自己动手吧。。。
------解决方案--------------------
宏定义很方便的
------解决方案--------------------
stl中的异常的what函数返回值是char *呢。大家怎么办呢?
------解决方案--------------------
建议你去看看ATL 8.0里面的CStringA。现在它是一个模板类,也许对你有帮助
------解决方案--------------------
偶最近在碰到了这种问题,
C++的东西要考虑的东西真是太多了。
------解决方案--------------------
也是自己作~ 尽量都用unicode
------解决方案--------------------
win98都快淘汰了,直接用Unicode吧,省却了诸多麻烦,简化了代码,提高了性能。
在VC上编程序,
对于Windows API和C/C++运行时库
如果使用MCBS,所有字符串都是char*
如果使用UNICODE,所有字符串都是wchar_t*
如果需要分别编译为MCBS和UICODE,可以用TCHAR*
其中MFC中的CString也受MCBS/UNICODE宏控制,相当于TCHAR*
然而在std中,
MCBS用string
UNICODE用wstring
另外io流与此类似.
好象没有一个可以同时适应MCBS和UNICODE的东西.
当然可以自己定义
#ifdef UNICODE
#define mystring string
#else
#define mystring wstring
#endif
然而考虑到还有IO流等一整套,
终究太不爽.
大家有什么好方法?
------解决方案--------------------
没什么好的办法,还是用unicode宏自己定义吧。
------解决方案--------------------
恩,我就是宏定义,这不挺好的吗
------解决方案--------------------
期待有好方法
------解决方案--------------------
自己定义,
用VC的想的就是要多一点
------解决方案--------------------
都用Unicode吧,大势所趋
------解决方案--------------------
unicode吧
------解决方案--------------------
我也是自己宏定义tstring.
------解决方案--------------------
也是自己作~ -,-
一般尽量都用unicode
------解决方案--------------------
好像自己动手吧。。。
------解决方案--------------------
宏定义很方便的
------解决方案--------------------
stl中的异常的what函数返回值是char *呢。大家怎么办呢?
------解决方案--------------------
建议你去看看ATL 8.0里面的CStringA。现在它是一个模板类,也许对你有帮助
------解决方案--------------------
偶最近在碰到了这种问题,
C++的东西要考虑的东西真是太多了。
------解决方案--------------------
也是自己作~ 尽量都用unicode
------解决方案--------------------
win98都快淘汰了,直接用Unicode吧,省却了诸多麻烦,简化了代码,提高了性能。