explicit list(const Allocator& = Allocator());
Effects: Constructs an empty list, using the specified allocator.
Complexity: Constant.
Effects: Constructs a list with n value-initialized elements.
Requires: T shall be DefaultConstructible.
Complexity: Linear in n.
list(size_type n, const T& value,
const Allocator& = Allocator());
Effects: Constructs a list with n copies of value, using the specified allocator.
Requires: T shall be CopyInsertable into *this.
Complexity: Linear in n.
template <class InputIterator>
list(InputIterator first, InputIterator last,
const Allocator& = Allocator());
Effects: Constructs a list equal to the range [first,last).
Complexity: Linear in distance(first, last).
template <class InputIterator>
void assign(InputIterator first, InputIterator last);
Effects: Replaces the contents of the list with the range [first, last).
void assign(size_type n, const T& t);
Effects: Replaces the contents of the list with n copies of t.