Boost C++ 库

...世界上最受推崇和精心设计的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ 编码标准

PrevUpHomeNext

类模板 optional_last_value

boost::signals2::optional_last_value — 求值一个 InputIterator 序列,并返回一个 boost::optional,其中包含序列中的最后一个值。如果序列为空,则返回一个空的 boost::optional。

概要

// In header: <boost/signals2/optional_last_value.hpp>

template<typename T> 
class optional_last_value {
public:
  // types
  typedef boost::optional<T> result_type;

  // invocation
  template<typename InputIterator> 
    result_type operator()(InputIterator, InputIterator) const;
};

描述

optional_last_value 是 Boost.Signals2 库中 signals 的默认 Combiner 模板类型。 optional_last_value 相对于 signals2::last_value 的优势在于,当其 InputIterator 序列为空时,optional_last_value 可以返回一个空的 boost::optional,而不是抛出异常。

optional_last_value 调用

  1. template<typename InputIterator> 
      result_type operator()(InputIterator first, InputIterator last) const;

    效果

    尝试解引用序列 [first, last) 中的每个迭代器。

    返回值

    最后一个成功迭代器解引用的结果,封装在一个 boost::optional 中。 如果没有迭代器被解引用,则返回的 optional 将为空。

    抛出

    不抛出。


PrevUpHomeNext