// <set>
template < class T,
           class Compare = less<T>,
           class Alloc = allocator<T> >
> class set;

集合(Set)容器是一个按特定顺序存储唯一(Unique)元素的关联容器(Associative container)。

A set is an associative container that supports unique keys (contains at most one of each key value) and provides for fast retrieval of the keys themselves.

C++编程语言国际标准:ISO/IEC 14882:2011

容器特性

关联(Associative)

关联容器中的元素是通过主键(Key)而不是它们在容器中的绝对位置来引用的。

有序(Ordered)

容器中的元素在任意时刻都遵循一个严格排序规则。所有插入的元素都按该排序规则获得对应的位置。

集合(Set)

元素的值同时可以用来标志对应的元素。

键唯一(Unique keys)

容器中不存在两个元素有相同的主键。

能够感知内存分配器的(Allocator-aware)

容器使用一个内存分配器对象来动态地处理它的存储需求。