4

我查看了模板定义,参数似乎需要跨范围和谓词的迭代器。我传入了一个vector.begin()、...end() 和一个std::string 谓词,但仍然得到许多与许多boost 库项目相关的编译时错误。我可以看到一个使用 boost::algorithm::contains 的清晰示例吗?

4

1 回答 1

16

这相当简单,我猜你应该在传递容器时传递迭代器。

  std::string s = "fishing"; 
  std::cout << boost::algorithm::contains(s, "is") << std::endl; 
  std::vector<int> v {1,2,3,5,7,2,7,4,5,8};
  std::vector<int> v2 {5,7,2,7,4};
  std::vector<int> v3 {5,7,2,7,3};
  std::cout << boost::algorithm::contains(v, v2) << std::endl;
  std::cout << boost::algorithm::contains(v, v3) << std::endl;
于 2013-03-26T15:25:52.313 回答