c stl容器的重载<<运算符
作者:互联网
我希望我可以使用cout<<来打印集合/矢量/地图的内容. .对于stl设计器来说,实现起来似乎并不那么困难:假设<<为T定义,<<因为容器可以只遍历元素并使用ofstream<< .
有一种我不知道的简单打印方法吗?
如果没有,是否有简单的解决方案?我读过一些地方,扩展stl类不是一个好主意.是这样,为什么?
如何定义类似重载的打印功能呢?
编辑:
我正在寻找一个可以处理…的容器的递归函数
我同意不同的人会喜欢不同的格式,但是可以覆盖的东西总比没有好
解决方法:
输出STL容器的最简单方法可能是
std::copy(cont.begin(), cont.end(),
std::ostream_iterator<Type>(std::cout, " "));
其中Type是cont元素的类型(例如,如果cont类型为std :: vector< int> ;,则Type必须为int). 当然,您可以使用任何ostream代替std :: cout.
标签:ofstream,c,stl 来源: https://codeday.me/bug/20191011/1894513.html