使用字符串重载流插入运算符

时间:2015-02-17 19:43:32

标签: c++

我一直在阅读这本书,但仍然没有100%明确这个概念。所以,请原谅我提出这样一个微不足道的问题,因为我的唯一目的是学习基础权利而不是琐碎和/或重复问题的垃圾邮件。

我查了相关问题,但无法找到问题的答案。

所以,这里是:

这是引用的代码段:

//s1 and s2 are objects of the std::string class

cout << "s1 is \""
     << s1
     << "\"; s2 is \""
     << s2
     << '\"';

这是作者对此所说的:

We now output these two string objects, using cout and operator <<, which the string class designers overloaded to handle string objects.

现在,重载了吗?他是否意味着它被重载以接受两个不同的参数(字符串对象 - s1 / s2和字符串文字 - &#34;&#34;中的东西)并执行相同的功能?我的理解是对的吗?它是否会超载?

1 个答案:

答案 0 :(得分:1)

简而言之,内置<<意味着左移一个整数类型。

标准库提供了<<的重载版本,当给定流(cout)和字符串(s1等)时,将正确地将字符串打印到屏幕上。

高度建议从图书清单中挑选一本书:The Definitive C++ Book Guide and List