0
点赞
收藏
分享

微信扫一扫

c++中std操作


文章目录

  • ​​string等示例​​
  • ​​std::istringstream​​
  • ​​std::ostringstream​​
  • ​​std::ostream_iterator​​
  • ​​std::istream​​
  • ​​std::countif​​
  • ​​std::for_each​​
  • ​​异常类型​​

这些东西都要和具体的std算法结合在一起。

string等示例

std::istringstream

把一个串初始化出来一个istringstream的流的类,继承自istream,那么,这个原本串里的空格,可以作为分隔,从stream里读入数据。

std::ostringstream

可以输出数据到这个输出流,然后out.str()提取输出到这个流里的字符串数据。

std::ostream_iterator

std::istream

#include <iostream>
#include <sstream>
#include <iterator>
#include <numeric>
#include <algorithm>

int main()
{
std::istringstream str("0.1 0.2 0.3 0.4");
std::partial_sum(std::istream_iterator<double>(str),
std::istream_iterator<double>(),
std::ostream_iterator<double>(std::cout, " "));

std::istringstream str2("1 3 5 7 8 9 10");
auto it = std::find_if(std::istream_iterator<int>(str2),
std::istream_iterator<int>(),
[](int i){return i%2 == 0;});
if (it != std::istream_iterator<int>())
std::cout << "\nThe first even number is " << *it << ".\n";
//" 9 10" left in the stream
}
Output:

0.1 0.3 0.6 1
The first even number is 8.

std::countif

判断从开始到结尾有多少满足条件的,计数

std::for_each

c++17与c++20

异常类型

std::invalid_argument
std::out_of_bounds


举报

相关推荐

0 条评论