CString和string的区别

刚开始不明白,后来百度得出一下答案:

CString 是MFC或者ATL中的实现,

string是C++标准库中的实现

string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,

已经纳入C++标准之中;

CString(typedef CStringT<TCHAR, StrTraitMFC<TCHAR>> CString)为Visual C++中最常用的字符串类,

继承自CSimpleStringT类,主要应用在MFC和ATL编程中,

主要数据类型有char(应用于ANSI),wchar_t(unicode),TCHAR(ANSI与unicode均可);

char*为C编程中最常用的字符串指针,一般以’\0’为结束标志;

在MFC、ATL中使用字符串尽量使用CString,毕竟都是微软的孩子,

各方面都比其它更有优势,而在非微软平台上或对移植性要求较高的场合推荐使用string,

标准模板库提供了那么强大的泛型算法,没必要再自己去造车轮。

posted @ 2013-04-16 15:24  shinecox  阅读(420)  评论(0编辑  收藏  举报