Класс QVarLengthArray
Класс QVarLengthArray предоставляет массив переменной длины низкого уровня. Подробнее...
| Заголовок: | #include <QVarLengthArray> |
| qmake: | QT += core |
Примечание: Все функции в этом классе являются реентерабельными.
Типы
| typedef | const_iterator |
| typedef | const_pointer |
| typedef | const_reference |
| typedef | const_reverse_iterator |
| typedef | difference_type |
| typedef | iterator |
| typedef | pointer |
| typedef | reference |
| typedef | reverse_iterator |
| typedef | size_type |
| typedef | value_type |
Открытые функции
| QVarLengthArray(std::initializer_list<T> args) | |
| QVarLengthArray(const QVarLengthArray<T, Prealloc> &other = ...) | |
| QVarLengthArray(int size = 0) | |
| QVarLengthArray<T, Prealloc> & | operator=(const QVarLengthArray<T, Prealloc> &other = ...) |
| ~QVarLengthArray() | |
| void | append(const T &t) |
| void | append(T &&t) |
| void | append(const T *buf, int size) |
| const T & | at(int i) const |
| T & | back() |
| const T & | back() const |
| QVarLengthArray::iterator | begin() |
| QVarLengthArray::const_iterator | begin() const |
| int | capacity() const |
| QVarLengthArray::const_iterator | cbegin() const |
| QVarLengthArray::const_iterator | cend() const |
| void | clear() |
| QVarLengthArray::const_iterator | constBegin() const |
| const T * | constData() const |
| QVarLengthArray::const_iterator | constEnd() const |
| bool | contains(const T &value) const |
| int | count() const |
| QVarLengthArray::const_reverse_iterator | crbegin() const |
| QVarLengthArray::const_reverse_iterator | crend() const |
| T * | data() |
| const T * | data() const |
| bool | empty() const |
| QVarLengthArray::iterator | end() |
| QVarLengthArray::const_iterator | end() const |
| QVarLengthArray::iterator | erase(QVarLengthArray::const_iterator pos) |
| QVarLengthArray::iterator | erase(QVarLengthArray::const_iterator begin, QVarLengthArray::const_iterator end) |
| T & | first() |
| const T & | first() const |
| T & | front() |
| const T & | front() const |
| int | indexOf(const T &value, int from = ...) const |
| void | insert(int i, T &&value) |
| void | insert(int i, const T &value) |
| void | insert(int i, int count, const T &value) |
| QVarLengthArray::iterator | insert(QVarLengthArray::const_iterator before, int count, const T &value) |
| QVarLengthArray::iterator | insert(QVarLengthArray::const_iterator before, T &&value) |
| QVarLengthArray::iterator | insert(QVarLengthArray::const_iterator before, const T &value) |
| bool | isEmpty() const |
| T & | last() |
| const T & | last() const |
| int | lastIndexOf(const T &value, int from = ...) const |
| int | length() const |
| void | pop_back() |
| void | prepend(T &&value) |
| void | prepend(const T &value) |
| void | push_back(const T &t) |
| void | push_back(T &&t) |
| QVarLengthArray::reverse_iterator | rbegin() |
| QVarLengthArray::const_reverse_iterator | rbegin() const |
| void | remove(int i) |
| void | remove(int i, int count) |
| void | removeLast() |
| QVarLengthArray::reverse_iterator | rend() |
| QVarLengthArray::const_reverse_iterator | rend() const |
| void | replace(int i, const T &value) |
| void | reserve(int size) |
| void | resize(int size) |
| void | shrink_to_fit() |
| int | size() const |
| void | squeeze() |
| T | value(int i) const |
| T | value(int i, const T &defaultValue) const |
| QVarLengthArray<T, Prealloc> & | operator+=(const T &value) |
| QVarLengthArray<T, Prealloc> & | operator+=(T &&value) |
| QVarLengthArray<T, Prealloc> & | operator<<(const T &value) |
| QVarLengthArray<T, Prealloc> & | operator<<(T &&value) |
| QVarLengthArray<T, Prealloc> & | operator=(std::initializer_list<T> list) |
| T & | operator[](int i) |
| const T & | operator[](int i) const |
Связанные нечлены
| bool | operator!=(const QVarLengthArray<T, Prealloc1> &left = ..., const QVarLengthArray<T, Prealloc2> &right = ...) |
| bool | operator<(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...) |
| bool | operator<=(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...) |
| bool | operator==(const QVarLengthArray<T, Prealloc1> &left = ..., const QVarLengthArray<T, Prealloc2> &right = ...) |
| bool | operator>(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...) |
| bool | operator>=(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...) |
Подробное описание
Язык C++ не поддерживает массивы переменной длины в стеке. Например, следующий код не будет компилироваться:
int myfunc(int n)
{
int table[n + 1]; // WRONG
...
return table[n];
} Альтернативой является выделение массива в куче (с new):
int myfunc(int n)
{
int *table = new int[n + 1];
...
int ret = table[n];
delete[] table;
return ret;
} Однако, если myfunc() вызывается очень часто из внутреннего цикла приложения, выделение памяти в куче может стать основной причиной замедления.
QVarLengthArray — это попытка обойти этот пробел в языке C++. Он выделяет определённое количество элементов в стеке, и если вы увеличиваете размер массива, он автоматически использует кучу вместо стека. Выделение в стеке имеет преимущество в том, что оно намного быстрее, чем выделение в куче.
Пример:
int myfunc(int n)
{
QVarLengthArray<int, 1024> array(n + 1);
...
return array[n];
} В приведённом выше примере QVarLengthArray предварительно выделит 1024 элемента в стеке и будет использовать их, пока n + 1 не будет больше 1024. Если вы опустите второй шаблонный аргумент, будет использоваться значение по умолчанию QVarLengthArray — 256.
QVarLengthArray должен иметь тип значения, являющийся присваиваемым типом данных. Это охватывает большинство типов данных, которые обычно используются, но компилятор не позволит вам, например, хранить QWidget как значение; вместо этого храните указатель на QWidget (QWidget*).
QVarLengthArray, как и QVector, предоставляет структуру данных с изменяемым размером массива. Основные различия между этими двумя классами:
- QVarLengthArray имеет гораздо более низкоуровневый API и лишен некоторых функций QVector.
- QVarLengthArray не инициализирует память, если тип значения — базовый тип. (QVector всегда делает это.)
- QVector использует неявное совместное использование в качестве оптимизации памяти. QVarLengthArray не предоставляет эту функцию; однако, он обычно обеспечивает немного лучшую производительность из-за уменьшенной нагрузки, особенно в узких циклах.
В итоге, QVarLengthArray — это низкоуровневый оптимизирующий класс, который имеет смысл только в очень специфических случаях. Он используется в нескольких местах внутри Qt и был добавлен в публичный API Qt для удобства продвинутых пользователей.
См. также QVector, QList и QLinkedList.
Документация типов членов
typedef QVarLengthArray::const_iterator
Тип-синоним для const T *. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::const_pointer
Тип-синоним для const T *. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::const_reference
Тип-синоним для const T &. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::const_reverse_iterator
Тип-синоним для std::reverse_iterator<const T*>. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 5.6.
typedef QVarLengthArray::difference_type
Тип-синоним для ptrdiff_t. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::iterator
Тип-синоним для T *. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::pointer
Тип-синоним для T *. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::reference
Тип-синоним для T &. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::reverse_iterator
Тип-синоним для std::reverse_iterator<T*>. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 5.6.
typedef QVarLengthArray::size_type
Тип-синоним для int. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
typedef QVarLengthArray::value_type
Тип-синоним для T. Представлен для совместимости со STL.
Этот тип-синоним был введён в Qt 4.7.
Документация функций-членов
QVarLengthArray::iterator QVarLengthArray::insert(QVarLengthArray::const_iterator before, const T &value)
QVarLengthArray::iterator QVarLengthArray::insert(QVarLengthArray::const_iterator before, T &&value)
Это перегруженная функция.
Вставляет value перед элементом, на который указывает итератор before. Возвращает итератор, указывающий на вставленный элемент.
Эта документация была введена в Qt 4.8.
void QVarLengthArray::insert(int i, const T &value)
void QVarLengthArray::insert(int i, T &&value)
Вставляет value в позицию с индексом i в массиве. Если i равно 0, значение вставляется в начало вектора. Если i равно size(), значение вставляется в конец вектора.
Для больших массивов эта операция может быть медленной (время выполнения — линейное), потому что она требует перемещения всех элементов с индексами i и выше на одну позицию дальше в памяти. Если вам нужен контейнерный класс, который обеспечивает быструю функцию insert(), используйте QLinkedList вместо этого.
Эта документация была введена в Qt 4.8.
См. также remove().
void QVarLengthArray::prepend(const T &value)
void QVarLengthArray::prepend(T &&value)
Вставляет value в начало массива.
Это то же самое, что и vector.insert(0, value).
Для больших массивов эта операция может быть медленной (линейное время), потому что она требует перемещения всех элементов в векторе на одну позицию дальше в памяти. Если вам нужен класс контейнера, предоставляющий быструю функцию prepend(), используйте QList или QLinkedList вместо него.
Данная документация была добавлена в Qt 4.8.
См. также append() и insert().
QVarLengthArray::QVarLengthArray(std::initializer_list<T> args)
Создаёт массив из переданного std::initializer_list args.
Этот конструктор доступен только если компилятор поддерживает C++11 initializer lists.
Эта функция была добавлена в Qt 5.5.
QVarLengthArray::QVarLengthArray(const QVarLengthArray<T, Prealloc> &other = ...)
Создаёт копию other.
QVarLengthArray::QVarLengthArray(int size = 0)
Создаёт массив с начальным размером size элементов.
Если тип значения является примитивным типом (например, char, int, float) или типом указателя (например, QWidget *), элементы не инициализируются. Для других типов элементы инициализируются значением по умолчанию.
QVarLengthArray<T, Prealloc> &QVarLengthArray::operator=(const QVarLengthArray<T, Prealloc> &other = ...)
Присваивает other этому массиву и возвращает ссылку на этот массив.
QVarLengthArray::~QVarLengthArray()
Удаляет массив.
void QVarLengthArray::append(const T &t)
Добавляет элемент t в конец массива, расширяя массив при необходимости.
См. также removeLast().
void QVarLengthArray::append(T &&t)
Эта функция перегружает append.
Примечание: В отличие от перегрузки append() для lvalue, передача ссылки на объект, который уже является элементом *this, приводит к неопределённому поведению:
vla.append(std::move(vla[0])); // BUG: passing an object that is already in the container
Эта функция была добавлена в Qt 5.9.
void QVarLengthArray::append(const T *buf, int size)
Добавляет size элементов, ссылающихся на buf, в этот массив.
const T &QVarLengthArray::at(int i) const
Возвращает ссылку на элемент с индексом i.
i должен быть допустимым индексом в массиве (т.е., 0 <= i < size()).
См. также value() и operator[]().
T &QVarLengthArray::back()
То же самое, что и last(). Предоставляется для совместимости со STL.
Эта функция была добавлена в Qt 5.0.
const T &QVarLengthArray::back() const
Это перегруженная функция.
Эта функция была добавлена в Qt 5.0.
QVarLengthArray::iterator QVarLengthArray::begin()
Возвращает итератор STL, указывающий на первый элемент в массиве.
Эта функция была добавлена в Qt 4.8.
См. также constBegin() и end().
QVarLengthArray::const_iterator QVarLengthArray::begin() const
Это перегруженная функция.
Эта функция была добавлена в Qt 4.8.
int QVarLengthArray::capacity() const
Возвращает максимальное количество элементов, которое может храниться в массиве без принудительной переаллокации.
Единственная цель этой функции — предоставить средство для точной настройки использования памяти QVarLengthArray. В общем случае вам редко придётся вызывать эту функцию. Если вы хотите узнать, сколько элементов находится в массиве, вызовите size().
См. также reserve() и squeeze().
QVarLengthArray::const_iterator QVarLengthArray::cbegin() const
Возвращает постоянный итератор STL, указывающий на первый элемент в массиве.
Эта функция была добавлена в Qt 5.0.
QVarLengthArray::const_iterator QVarLengthArray::cend() const
Возвращает постоянный итератор STL, указывающий на несуществующий элемент после последнего элемента в массиве.
Эта функция была добавлена в Qt 5.0.
void QVarLengthArray::clear()
Удаляет все элементы из массива.
То же самое, что и resize(0).
QVarLengthArray::const_iterator QVarLengthArray::constBegin() const
Возвращает постоянный итератор STL, указывающий на первый элемент в массиве.
Эта функция была добавлена в Qt 4.8.
См. также begin() и constEnd().
const T *QVarLengthArray::constData() const
Возвращает постоянный указатель на данные, хранящиеся в массиве. Указатель может быть использован для доступа к элементам массива. Указатель остаётся допустимым до тех пор, пока массив не перевыделяется.
Эта функция, в основном, полезна для передачи массива функции, принимающей обычный массив C++.
См. также data() и operator[]().
QVarLengthArray::const_iterator QVarLengthArray::constEnd() const
Возвращает постоянный итератор STL, указывающий на несуществующий элемент после последнего элемента в массиве.
Эта функция была добавлена в Qt 4.8.
См. также constBegin() и end().
bool QVarLengthArray::contains(const T &value) const
Возвращает true , если массив содержит вхождение value; в противном случае возвращает false.
Для этой функции необходима реализация operator==() для типа значения.
Эта функция была добавлена в Qt 5.3.
См. также indexOf() и lastIndexOf().
int QVarLengthArray::count() const
То же самое, что и size().
См. также isEmpty() и resize().
QVarLengthArray::const_reverse_iterator QVarLengthArray::crbegin() const
Возвращает постоянный итератор STL, указывающий на первый элемент в массиве в обратном порядке.
Эта функция была добавлена в Qt 5.6.
См. также begin(), rbegin(), и rend().
QVarLengthArray::const_reverse_iterator QVarLengthArray::crend() const
Возвращает постоянный итератор STL, указывающий на элемент после последнего элемента в массиве в обратном порядке.
Эта функция была добавлена в Qt 5.6.
См. также end(), rend(), и rbegin().
T *QVarLengthArray::data()
Возвращает указатель на данные, хранящиеся в массиве. Указатель может быть использован для доступа и изменения элементов в массиве.
Пример:
QVarLengthArray<int> array(10);
int *data = array.data();
for (int i = 0; i < 10; ++i)
data[i] = 2 * i; Указатель остаётся допустимым до тех пор, пока массив не перевыделяется.
Эта функция, в основном, полезна для передачи массива функции, принимающей обычный массив C++.
См. также constData() и operator[]().
const T *QVarLengthArray::data() const
Это перегруженная функция.
bool QVarLengthArray::empty() const
Возвращает true если размер массива равен 0; в противном случае возвращает false.
То же самое, что и isEmpty(). Предоставлено для совместимости со STL.
Эта функция была введена в Qt 5.0.
QVarLengthArray::iterator QVarLengthArray::end()
Возвращает итератор STL, указывающий на мнимый элемент после последнего элемента в массиве.
Эта функция была введена в Qt 4.8.
См. также begin() и constEnd().
QVarLengthArray::const_iterator QVarLengthArray::end() const
Это перегруженная функция.
Эта функция была введена в Qt 4.8.
QVarLengthArray::iterator QVarLengthArray::erase(QVarLengthArray::const_iterator pos)
Удаляет элемент, на который указывает итератор pos, из вектора и возвращает итератор на следующий элемент в векторе (который может быть end()).
Эта функция была введена в Qt 4.8.
См. также insert() и remove().
QVarLengthArray::iterator QVarLengthArray::erase(QVarLengthArray::const_iterator begin, QVarLengthArray::const_iterator end)
Это перегруженная функция.
Удаляет все элементы от begin до (но не включая) end. Возвращает итератор, ссылающийся на тот же элемент, на который ссылался end до вызова.
Эта функция была введена в Qt 4.8.
T &QVarLengthArray::first()
Возвращает ссылку на первый элемент в массиве. Массив не должен быть пустым. Если массив может быть пустым, проверьте isEmpty() перед вызовом этой функции.
const T &QVarLengthArray::first() const
Это перегруженная функция.
T &QVarLengthArray::front()
То же самое, что и first(). Предоставлено для совместимости со STL.
Эта функция была введена в Qt 5.0.
const T &QVarLengthArray::front() const
Это перегруженная функция.
Эта функция была введена в Qt 5.0.
int QVarLengthArray::indexOf(const T &value, int from = ...) const
Возвращает индекс первого вхождения value в массиве, идя вперед с индекса from. Возвращает -1, если элемент не найден.
Эта функция требует, чтобы тип значения имел реализацию operator==().
Эта функция была введена в Qt 5.3.
См. также lastIndexOf() и contains().
void QVarLengthArray::insert(int i, int count, const T &value)
Это перегруженная функция.
Вставляет count копий value в позицию с индексом i в векторе.
Эта функция была введена в Qt 4.8.
QVarLengthArray::iterator QVarLengthArray::insert(QVarLengthArray::const_iterator before, int count, const T &value)
Вставляет count копий value перед элементом, на который указывает итератор before. Возвращает итератор, указывающий на первый из вставленных элементов.
Эта функция была введена в Qt 4.8.
bool QVarLengthArray::isEmpty() const
Возвращает true если размер массива равен 0; в противном случае возвращает false.
T &QVarLengthArray::last()
Возвращает ссылку на последний элемент в массиве. Массив не должен быть пустым. Если массив может быть пустым, проверьте isEmpty() перед вызовом этой функции.
См. также first() и isEmpty().
const T &QVarLengthArray::last() const
Это перегруженная функция.
int QVarLengthArray::lastIndexOf(const T &value, int from = ...) const
Возвращает индекс последнего вхождения значения value в массиве, идя назад с индекса from. Если from равно -1 (по умолчанию), поиск начинается с последнего элемента. Возвращает -1, если элемент не найден.
Эта функция требует, чтобы тип значения имел реализацию operator==().
Эта функция была введена в Qt 5.3.
См. также indexOf() и contains().
int QVarLengthArray::length() const
То же самое, что и size().
Эта функция была введена в Qt 5.0.
См. также isEmpty() и resize().
void QVarLengthArray::pop_back()
То же самое, что и removeLast(). Предоставлено для совместимости со STL.
Эта функция была введена в Qt 5.0.
void QVarLengthArray::push_back(const T &t)
Добавляет элемент t в конец массива, расширяя массив при необходимости. Предоставлено для совместимости со STL.
Эта функция была введена в Qt 5.0.
void QVarLengthArray::push_back(T &&t)
Эта функция перегружает push_back.
Примечание: В отличие от перегрузки push_back для lvalue, передача ссылки на объект, который уже является элементом *this приводит к неопределенному поведению:
vla.push_back(std::move(vla[0])); // BUG: passing an object that is already in the container
Эта функция была введена в Qt 5.9.
QVarLengthArray::reverse_iterator QVarLengthArray::rbegin()
Возвращает итератор STL, указывающий на первый элемент в массиве переменной длины в обратном порядке.
Эта функция была введена в Qt 5.6.
См. также begin(), crbegin() и rend().
QVarLengthArray::const_reverse_iterator QVarLengthArray::rbegin() const
Это перегруженная функция.
Эта функция была введена в Qt 5.6.
void QVarLengthArray::remove(int i)
Это перегруженная функция.
Удаляет элемент в позиции с индексом i.
Эта функция была введена в Qt 4.8.
См. также insert() и replace().
void QVarLengthArray::remove(int i, int count)
Это перегруженная функция.
Удаляет count элементов из середины массива, начиная с позиции с индексом i.
Эта функция была введена в Qt 4.8.
См. также insert() и replace().
void QVarLengthArray::removeLast()
Уменьшает размер массива на единицу. Размер выделенной памяти не изменяется.
Эта функция была введена в Qt 4.5.
См. также append().
QVarLengthArray::reverse_iterator QVarLengthArray::rend()
Возвращает итератор STL, указывающий на элемент после последнего элемента в массиве переменной длины в обратном порядке.
Эта функция была введена в Qt 5.6.
См. также end(), crend() и rbegin().
QVarLengthArray::const_reverse_iterator QVarLengthArray::rend() const
Это перегруженная функция.
Эта функция была введена в Qt 5.6.
void QVarLengthArray::replace(int i, const T &value)
Заменяет элемент в позиции с индексом i на value.
i должно быть допустимым индексом в массиве (т.е., 0 <= i < размер()).
Эта функция была добавлена в Qt 4.8.
См. также operator[]() и remove().
void QVarLengthArray::reserve(int размер)
Попытка выделить память для не менее чем размер элементов. Если заранее известно, насколько большим может стать массив, вы можете вызвать эту функцию, и если вы часто вызываете resize(), вероятнее всего, это повысит производительность. Если размер является заниженной оценкой, худшее, что может произойти, — это то, что QVarLengthArray будет работать немного медленнее.
Единственная цель этой функции — предоставить способ тонкой настройки использования памяти QVarLengthArray. Как правило, вам редко понадобится вызывать эту функцию. Если вы хотите изменить размер массива, вызовите resize().
См. также capacity() и squeeze().
void QVarLengthArray::resize(int размер)
Устанавливает размер массива в размер. Если размер больше текущего размера, элементы добавляются в конец. Если размер меньше текущего размера, элементы удаляются с конца.
Если тип значения является примитивным типом (например, char, int, float) или типом указателя (например, QWidget *), новые элементы не инициализируются. Для других типов элементы инициализируются с помощью значения по умолчанию.
void QVarLengthArray::shrink_to_fit()
То же, что и squeeze(). Предоставлено для совместимости со STL.
Эта функция была добавлена в Qt 5.10.
int QVarLengthArray::size() const
Возвращает количество элементов в массиве.
См. также isEmpty() и resize().
void QVarLengthArray::squeeze()
Освобождает любую память, не необходимую для хранения элементов. Если контейнер может поместить свое хранилище в стековой области памяти, он освободит кучную область памяти и скопирует элементы обратно в стековую область памяти.
Единственная цель этой функции — предоставить способ тонкой настройки использования памяти QVarLengthArray. Как правило, вам редко понадобится вызывать эту функцию.
Эта функция была добавлена в Qt 5.1.
См. также reserve(), capacity(), и resize().
T QVarLengthArray::value(int i) const
Возвращает значение по индексу i.
Если индекс i находится вне границ, функция возвращает значение по умолчанию. Если вы уверены, что i находится в пределах границ, вы можете использовать at() вместо этого, что немного быстрее.
См. также at() и operator[]().
T QVarLengthArray::value(int i, const T &defaultValue) const
Это перегруженная функция.
Если индекс i находится вне границ, функция возвращает defaultValue.
QVarLengthArray<T, Prealloc> &QVarLengthArray::operator+=(const T &value)
Добавляет value в массив и возвращает ссылку на этот массив.
Эта функция была добавлена в Qt 4.8.
См. также append() и operator<<().
QVarLengthArray<T, Prealloc> &QVarLengthArray::operator+=(T &&value)
Это перегруженная функция.
Эта функция была добавлена в Qt 5.11.
См. также append() и operator<<().
QVarLengthArray<T, Prealloc> &QVarLengthArray::operator<<(const T &value)
Добавляет value в массив и возвращает ссылку на этот массив.
Эта функция была добавлена в Qt 4.8.
См. также append() и operator+=().
QVarLengthArray<T, Prealloc> &QVarLengthArray::operator<<(T &&value)
Это перегруженная функция.
Эта функция была добавлена в Qt 5.11.
См. также append() и operator+=().
QVarLengthArray<T, Prealloc> &QVarLengthArray::operator=(std::initializer_list<T> list)
Присваивает значения из list этому массиву и возвращает ссылку на этот массив.
Этот конструктор включен только в том случае, если компилятор поддерживает C++11 initializer lists.
Эта функция была добавлена в Qt 5.5.
T &QVarLengthArray::operator[](int i)
Возвращает ссылку на элемент по индексу i.
i должно быть допустимым индексом в массиве (т.е., 0 <= i < размер()).
const T &QVarLengthArray::operator[](int i) const
Это перегруженная функция.
Связанные нечлены
bool QVarLengthArray::operator!=(const QVarLengthArray<T, Prealloc1> &left = ..., const QVarLengthArray<T, Prealloc2> &right = ...)
Возвращает true, если два массива, заданные left и right, не равны.
Два массива считаются равными, если они содержат одинаковые значения в том же порядке.
Для этой функции требуется, чтобы тип значения имел реализацию operator==().
Эта функция была добавлена в Qt 4.8.
См. также operator==().
bool QVarLengthArray::operator<(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...)
Возвращает true, если массив переменной длины lhs лексикографически меньше, чем rhs; в противном случае возвращает false.
Для этой функции требуется, чтобы тип значения имел реализацию operator<().
Эта функция была добавлена в Qt 5.6.
bool QVarLengthArray::operator<=(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...)
Возвращает true, если массив переменной длины lhs лексикографически меньше или равен rhs; в противном случае возвращает false.
Для этой функции требуется, чтобы тип значения имел реализацию operator<().
Эта функция была добавлена в Qt 5.6.
bool QVarLengthArray::operator==(const QVarLengthArray<T, Prealloc1> &left = ..., const QVarLengthArray<T, Prealloc2> &right = ...)
Возвращает true, если два массива, заданные left и right, равны.
Два массива считаются равными, если они содержат одинаковые значения в том же порядке.
Для этой функции требуется, чтобы тип значения имел реализацию operator==().
Эта функция была добавлена в Qt 4.8.
См. также operator!=().
bool QVarLengthArray::operator>(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...)
Возвращает true, если массив переменной длины lhs лексикографически больше, чем rhs; в противном случае возвращает false.
Для этой функции требуется, чтобы тип значения имел реализацию operator<().
Эта функция была добавлена в Qt 5.6.
bool QVarLengthArray::operator>=(const QVarLengthArray<T, Prealloc1> &lhs = ..., const QVarLengthArray<T, Prealloc2> &rhs = ...)
Возвращает true, если массив переменной длины lhs лексикографически больше или равен rhs; в противном случае возвращает false.
Для этой функции требуется, чтобы тип значения имел реализацию operator<().
Эта функция была добавлена в Qt 5.6.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qvarlengtharray.html