Copy(c);
}
+ template <class InputIterator>
+ wxVector(InputIterator first, InputIterator last)
+ : m_size(0), m_capacity(0), m_values(NULL)
+ {
+ assign(first, last);
+ }
+
~wxVector()
{
clear();
push_back(v);
}
+ template <class InputIterator>
+ void assign(InputIterator first, InputIterator last)
+ {
+ clear();
+
+ // Notice that it would be nice to call reserve() here but we can't do
+ // it for arbitrary input iterators, we should have a dispatch on
+ // iterator type and call it if possible.
+
+ for ( InputIterator it = first; it != last; ++it )
+ push_back(*it);
+ }
+
void swap(wxVector& v)
{
wxSwap(m_size, v.m_size);
*/
wxVector(size_type size, const value_type& value);
+ /**
+ Constructor initializing the vector with the elements in the given
+ range.
+
+ The @a InputIterator template parameter must be an input iterator type.
+ This constructor adds all elements from @a first until, not not
+ including, @a last to the vector.
+
+ @since 2.9.5
+ */
+ template <class InputIterator>
+ wxVector(InputIterator first, InputIterator last);
+
/**
Copy constructor.
*/
*/
void assign(size_type n, const value_type& v);
+ /**
+ Assigns the elements in the given range to the vector.
+
+ The @a InputIterator template parameter must be an input iterator type.
+ This method clears the vector and then adds all elements from @a first
+ until, not not including, @a last to it.
+
+ @since 2.9.5
+ */
+ template <class InputIterator>
+ void assign(InputIterator first, InputIterator last);
+
/**
Returns item at position @a idx.
*/