Allow shrinking the array with wxArray::resize().
This method did nothing if its argument was less than the current array size, as it was just a synonym for SetSize() which was documented to behave like this, but this was inconsistent with std::vector and wxVector resize() which does shrink the array, so change wxArray version to shrink it too. Closes #15195. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -274,8 +274,13 @@ protected: \
|
|||||||
void pop_back() { RemoveAt(size() - 1); } \
|
void pop_back() { RemoveAt(size() - 1); } \
|
||||||
void push_back(const value_type& v) { Add(v); } \
|
void push_back(const value_type& v) { Add(v); } \
|
||||||
void reserve(size_type n) { Alloc(n); } \
|
void reserve(size_type n) { Alloc(n); } \
|
||||||
void resize(size_type n, value_type v = value_type()) \
|
void resize(size_type count, value_type defval = value_type()) \
|
||||||
{ SetCount(n, v); } \
|
{ \
|
||||||
|
if ( count < m_nCount ) \
|
||||||
|
m_nCount = count; \
|
||||||
|
else \
|
||||||
|
SetCount(count, defval); \
|
||||||
|
} \
|
||||||
\
|
\
|
||||||
iterator begin() { return m_pItems; } \
|
iterator begin() { return m_pItems; } \
|
||||||
iterator end() { return m_pItems + m_nCount; } \
|
iterator end() { return m_pItems + m_nCount; } \
|
||||||
|
Reference in New Issue
Block a user