C++ 迭代器库 - o​​utput_iterator_tag


描述

它用于将迭代器的类别标识为输出迭代器,并且所有输出迭代器至少支持以下操作之一。

C++98

财产 有效的表达式
它是可复制构造、可复制分配和可破坏的

X b(a);

b = a;

它可以作为左值取消引用(如果处于可取消引用状态)。

它只能作为赋值语句的左侧被取消引用。

一旦取消引用,其迭代器值可能不再是可取消引用的

*a = t
它可以递增。

++a

a++

*a++ = t

C++11

财产 有效的表达式
它是可复制构造、可复制分配和可破坏的

X b(a);

b = a;

它可以作为左值取消引用(如果处于可取消引用状态)。

它只能作为赋值语句的左侧被取消引用。

一旦取消引用,其迭代器值可能不再是可取消引用的

*a = t
它可以递增。

++a

a++

*a++ = t

左值是可交换的 swap(a,b)

宣言

以下是 std::output_iterator_tag 的声明。

C++11

struct output_iterator_tag {};
迭代器.htm