This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of TC1 status.
Section: 220.127.116.11 [vector.cons] Status: TC1 Submitter: Howard Hinnant Opened: 1999-03-06 Last modified: 2017-02-03
Priority: Not Prioritized
View all issues with TC1 status.
The complexity description says: "It does at most 2N calls to the copy constructor of T and logN reallocations if they are just input iterators ...".
This appears to be overly restrictive, dictating the precise memory/performance tradeoff for the implementor.
Change 18.104.22.168 [vector.cons], paragraph 1 to:
-1- Complexity: The constructor template <class InputIterator> vector(InputIterator first, InputIterator last) makes only N calls to the copy constructor of T (where N is the distance between first and last) and no reallocations if iterators first and last are of forward, bidirectional, or random access categories. It makes order N calls to the copy constructor of T and order logN reallocations if they are just input iterators.
"at most 2N calls" is correct only if the growth factor is greater than or equal to 2.