查找失败时 boost string_algo 返回值
我想首先使用 boost::string_algo 的 find 找到一行上的第一个空格:
const boost::iterator_range<std::string::iterator> token_range = boost::find_first(line, " ");
不过,我似乎在文档中找不到任何说明如果找不到空格则返回什么的内容。我是否需要针对 line.end() 或其他内容测试 token_range.end() ?
谢谢!
I want to find the first space on a line using boost::string_algo's find first:
const boost::iterator_range<std::string::iterator> token_range = boost::find_first(line, " ");
I can't seem to find anything in the docs that says what this returns if it doesn't find a space, though. Do I need to test token_range.end() against line.end() or something?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为你应该只测试
token_range.empty()
,如下所示:boost::iterator_range
还有一个 bool 转换运算符,因此你甚至可以删除 empty() 函数打电话,然后写:I think you should just test
token_range.empty()
, like this:boost::iterator_range
also has a bool conversion operator, so you can even drop the empty() function call, and just write: