c++中的String类,为什么直接用于cout就能输出?它里面包含了什么?

 我来答
空中堡垒A64
推荐于2016-04-20 · 超过12用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:21.1万
展开全部
不太明白你的意思,不过C++中的cout是一个输出流(ostream)类的对象,你写的这行代码using namespace std就是为了引入cout、cin等等对象的,其有一个成员函数operator<<,所以能够向屏幕输出内容,并且由于该成员函数进行了重载,使得其可以输出各种基本数据类型和String类型的数据。这就跟Java中的输出语句System.out.println()中的prinln()是打印流类(PrintStream,System.out就是该类的对象)一样的。
追问
那String类里面应该有一个函数,配合cout对象中的<<运算符重载吧?
追答

不是,是cout所属的类ostream里面重载了处理所有类型数据的operator<<()方法,

String在C语言里面是以char[]的形式顺序存储的,char类型又可以转换为int类型,所以cout可以输出字符串,而C++中的String类型为这一切做了封装。使得你直接调用它就可以输出各种类型的数据

pxdbxq
2014-10-23 · TA获得超过314个赞
知道答主
回答量:58
采纳率:0%
帮助的人:42.5万
展开全部
重载了<<运算符的吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式