大家总结一下char* string CString的各个方面

fayejt 2005-08-31 11:52:43
~~
...全文
278 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
fytzzh 2005-09-07
  • 打赏
  • 举报
回复
在写c程序时只能用char *。虽然很容易出错,但在c中别无选择。
如果写windows程序,不考虑移植问题当然CString 是首选。
在写c++程序中应该尽量不用char *。如果是在写Linux/UNIX时能用string 的情况下就不要用char *.
oyd 2005-09-06
  • 打赏
  • 举报
回复
通常大家以为用string 比用 CString 少了一个MFC库,而且还多了通用性。
但是大家不知道发现没有,在VC下,string对系统的依赖性比CString更大。
dot99 2005-09-04
  • 打赏
  • 举报
回复
磕睡虫~~~~
string 到 char* 到 const char* 都没有提供默认的转换
要显示的调用string::c_str()
snowbirdfly 2005-09-02
  • 打赏
  • 举报
回复
char *是一个指针,具体就是用于字符串操作~
string则具体是STL里面的标准字符串~
CString则是MFC中封装好的字符串类~主要是使用比较方便~
herman~~ 2005-09-02
  • 打赏
  • 举报
回复
CString是一个MFC类,MS包装的字符串实现!
char * 指向字符串的指针

bugebear3 2005-09-02
  • 打赏
  • 举报
回复
楼上的都讲完了
zhouhuahai 2005-09-01
  • 打赏
  • 举报
回复
string和CString的共同之处在于,它们都把对char *所作的操作封装了起来,向外提供了接口.而不用管内部的实现细节,

例如:内存的分配和释放等等.
zhouhuahai 2005-09-01
  • 打赏
  • 举报
回复
CString有一些独特的功能:如Format,可以直接格式化其字符串.
zhouhuahai 2005-09-01
  • 打赏
  • 举报
回复
char* 到 string 没有默认转换
但是 string 到 char* 是有的 !(这个在一些时候经常要用到 !)

此话好像有点不妥当.

默认转换,是指operator?
string没有提供operator char*()或者operator const char*(),倒是有一个c_str(),返回类型为const char *;

如果不是指转换运算符,那么string的ctor和assign都可以接收一个const char *;
mituzhishi 2005-09-01
  • 打赏
  • 举报
回复
string是stl中的,封装的很好,很好用;

char* 就是一个指针,可以搞字符串,但极易出错,不推荐使用

cstring很好用,不过是mfc的东西,不是什么时候都能用。
healer_kx 2005-09-01
  • 打赏
  • 举报
回复
CString是最好的,完全可以在工程中使用,当然了,通常是MFC,ATL工程。

std::string就一般了,

char*,尽量不用。
jixingzhong 2005-09-01
  • 打赏
  • 举报
回复
char* 到 string 没有默认转换
但是 string 到 char* 是有的 !(这个在一些时候经常要用到 !)
jsjjms 2005-09-01
  • 打赏
  • 举报
回复
CString没有研究过

char* ,string 感觉没有共同之处.string标准c++下支持.

char*是一个指针only....
lujun-cc 2005-09-01
  • 打赏
  • 举报
回复
string 是STL中实现的一个字符串,是C++的标准字符串实现!
CString是一个MFC类,MS包装的字符串实现!

64,439

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧