QByteArray/QString: add resizeForOverwrite
For these classes it's not really a new feature, but exposing the current resize() behavior (which does uninitialized resizes) under a proper name. Changing the existing behavior for resize() is a behavioral break that we can only likely afford in Qt 7. [ChangeLog][QtCore][QString] Added resizeForOverwrite(). [ChangeLog][QtCore][QByteArray] Added resizeForOverwrite(). Change-Id: I15b3104aee2bc29d23e91d97b0e64f87612d0099 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
73bf1c1a9b
commit
cfaed64873
@ -1896,6 +1896,21 @@ void QByteArray::resize(qsizetype newSize, char c)
|
||||
memset(d.data() + old, c, d.size - old);
|
||||
}
|
||||
|
||||
/*!
|
||||
\since 6.8
|
||||
|
||||
Resizes the byte array to \a size bytes. If the size of the
|
||||
byte array grows, the new bytes are uninitialized.
|
||||
|
||||
The behavior is identical to \c{resize(size)}.
|
||||
|
||||
\sa resize()
|
||||
*/
|
||||
void QByteArray::resizeForOverwrite(qsizetype size)
|
||||
{
|
||||
resize(size);
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets every byte in the byte array to \a ch. If \a size is different from -1
|
||||
(the default), the byte array is resized to size \a size beforehand.
|
||||
|
@ -105,6 +105,7 @@ public:
|
||||
bool isEmpty() const noexcept { return size() == 0; }
|
||||
void resize(qsizetype size);
|
||||
void resize(qsizetype size, char c);
|
||||
void resizeForOverwrite(qsizetype size);
|
||||
|
||||
QByteArray &fill(char c, qsizetype size = -1);
|
||||
|
||||
|
@ -2680,6 +2680,24 @@ void QString::resize(qsizetype newSize, QChar fillChar)
|
||||
std::fill_n(d.data() + oldSize, difference, fillChar.unicode());
|
||||
}
|
||||
|
||||
|
||||
/*!
|
||||
\since 6.8
|
||||
|
||||
Sets the size of the string to \a size characters. If the size of
|
||||
the string grows, the new characters are uninitialized.
|
||||
|
||||
The behavior is identical to \c{resize(size)}.
|
||||
|
||||
\sa resize()
|
||||
*/
|
||||
|
||||
void QString::resizeForOverwrite(qsizetype size)
|
||||
{
|
||||
resize(size);
|
||||
}
|
||||
|
||||
|
||||
/*! \fn qsizetype QString::capacity() const
|
||||
|
||||
Returns the maximum number of characters that can be stored in
|
||||
|
@ -190,6 +190,7 @@ public:
|
||||
inline bool isEmpty() const noexcept { return d.size == 0; }
|
||||
void resize(qsizetype size);
|
||||
void resize(qsizetype size, QChar fillChar);
|
||||
void resizeForOverwrite(qsizetype size);
|
||||
|
||||
QString &fill(QChar c, qsizetype size = -1);
|
||||
void truncate(qsizetype pos);
|
||||
|
Loading…
x
Reference in New Issue
Block a user