output_iterator_tag
描述 (Description)
它用于将迭代器的类别标识为输出迭代器,并且所有输出迭代器至少支持以下一个操作。
C++98
属性 | 有效的表达 |
---|---|
它是一个可复制构造,可复制分配和可破坏的 | X b(a); b = a; |
它可以被解除引用为lvalue (如果处于可dereferenceable状态)。 它只能被解除引用作为赋值语句的左侧。 一旦解除引用,其迭代器值可能不再可dereferenceable 。 | *a = t |
它可以递增。 | ++a A ++ *a++ = t |
C++11
属性 | 有效的表达 |
---|---|
它是一个可复制构造,可复制分配和可破坏的 | X b(a); b = a; |
它可以被解除引用为lvalue (如果处于可dereferenceable状态)。 它只能被解除引用作为赋值语句的左侧。 一旦解除引用,其迭代器值可能不再可dereferenceable 。 | *a = t |
它可以递增。 | ++a A ++ *a++ = t |
左值是可以swappable 。 | swap (a,b) |
声明 (Declaration)
以下是std :: output_iterator_tag的声明。
C++11
struct output_iterator_tag {};