c++ - c++流的理解使用问题
问题描述
嗨,我已经阅读了几篇关于流的文章,并且对它们有所了解。例如,它们不是随机访问,它们是串行接口,或者例如它们是数据流..就我而言,但它们到底是什么..这让我真的很困惑,我不明白你知道我对这个概念的主要问题是我不理解抽象让我举个例子:
strign S;
std::cin>>string S;
据我所知,当我们写这个时,这意味着“cin”是一个 iostream 对象,“>>”是 iostream 对象的重载操作,cin 同步到键盘。所以它从键盘读取数据,然后字符串“S”是 cin 流的扩展,然后从键盘捕获的数据被放入字符串“S”或者让我们考虑以下代码:
string largest_number(vector<string> a) {
std::stringstream ret;
for (size_t i = 0; i < a.size(); i++) {
ret << a[i];
}
string result;
ret >> result;
return result;
}
在这段代码中,我的理解是“ret”是一个字符串流,因为它通过声明很明显并且它只读取字符串类型输入吗??(我猜是这样)然后由运算符“”<<“”我们将数据放入流中,然后通过 "">>"" 我们将数据放入 ""result"" 中,因为 ""ret"" 是流,结果可以是此处选择的任何类型的字符串我知道这么多,但我仍然觉得我离理解流的核心概念还很远,如果有人可以帮助我理解这个概念并给我一个非常温和的想法来了解流的要点
解决方案
推荐阅读
- c# - .NET Core 中的一对多关系数据播种
- list - 在给定的numpy矩阵中查找等于零的元素的索引
- web-services - https://XXXXXX/XXXX.svc 上没有端点监听 - 远程服务器返回错误:(403) Forbidden
- react-native - 我的 React-Native 应用程序需要分页、延迟加载还是不需要?
- azure - Azure Devops 无法填充选项列表
- c++ - 程序的输出将是什么 - 异常处理?
- javascript - 事件侦听器需要在 DOM 更新之前单击两次
- python - ValueError:要解包的值太多(预期为 1)?
- c# - 从多个切片创建 Span
- docker - 对docker镜像中拷贝文件的误解