高手帮忙

YUKUILONGQQ 2008-10-17 09:14:09
C++ 里的string 类型 可以 string a="skhfgkjhf"; cout<<a; 就可以得到 skhfgkjhf
这个 a应该是个什么呀 是一个指向字符串的指针吗 ????
...全文
91 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wwwypy 2008-10-18
  • 打赏
  • 举报
回复
up
giant1st 2008-10-18
  • 打赏
  • 举报
回复
typedef basic_string<char> string

因为 cout能输出 char 和char*,所以能输出 string,感觉它更像是char*

elegant87 2008-10-18
  • 打赏
  • 举报
回复
不是指针,a是一个string类的对象!
string是C++模板中的一个类库。
#include <string>这个头文件里面的!
Dan_M 2008-10-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chlaws 的回复:]
不是指针
是一个basic_string <char> 的对象 在basic_ostream 重载了 < < 所以才能直接才用cout < < a
[/Quote]
学习了
Vegertar 2008-10-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chlaws 的回复:]
不是指针
是一个basic_string <char> 的对象 在basic_ostream 重载了 < < 所以才能直接才用cout < < a
[/Quote]
汗,原来是basic_string<>啊! 我这记性...
lzr4304061988012 2008-10-17
  • 打赏
  • 举报
回复

a是string类的对象,string a="skhfgkjhf"//调用了构造函数初始化;

typedef basic_string<char> string;//basic_string是类模板.

chlaws 2008-10-17
  • 打赏
  • 举报
回复
不是指针
是一个basic_string<char> 的对象 在basic_ostream 重载了<< 所以才能直接才用cout << a
Vegertar 2008-10-17
  • 打赏
  • 举报
回复
这不是指针, 简单来说你可以将它想像成封装了C-style string的类.
它其实是一个特化的模板,好像是这个样子:
typedef string_base<char> string;

65,211

社区成员

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

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