mirror of
https://github.com/wolfpld/tracy.git
synced 2025-03-20 07:40:02 +08:00
Add no-nullptr-check push_back to Vector.
This commit is contained in:
parent
519d40be69
commit
1e6707c609
@ -79,6 +79,12 @@ public:
|
|||||||
m_ptr[m_size++] = v;
|
m_ptr[m_size++] = v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void push_back_non_empty( const T& v )
|
||||||
|
{
|
||||||
|
if( m_size == CapacityNoNullptrCheck() ) AllocMore();
|
||||||
|
m_ptr[m_size++] = v;
|
||||||
|
}
|
||||||
|
|
||||||
void push_back( T&& v )
|
void push_back( T&& v )
|
||||||
{
|
{
|
||||||
if( m_size == Capacity() ) AllocMore();
|
if( m_size == Capacity() ) AllocMore();
|
||||||
@ -186,7 +192,7 @@ private:
|
|||||||
|
|
||||||
void Realloc()
|
void Realloc()
|
||||||
{
|
{
|
||||||
T* ptr = new T[CapacityNew()];
|
T* ptr = new T[CapacityNoNullptrCheck()];
|
||||||
if( m_size != 0 )
|
if( m_size != 0 )
|
||||||
{
|
{
|
||||||
memcpy( ptr, m_ptr, m_size * sizeof( T ) );
|
memcpy( ptr, m_ptr, m_size * sizeof( T ) );
|
||||||
@ -200,7 +206,7 @@ private:
|
|||||||
return m_ptr == nullptr ? 0 : 1 << m_capacity;
|
return m_ptr == nullptr ? 0 : 1 << m_capacity;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t CapacityNew() const
|
uint32_t CapacityNoNullptrCheck() const
|
||||||
{
|
{
|
||||||
return 1 << m_capacity;
|
return 1 << m_capacity;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user