
- •Иерархия объектов в Qt
- •Мета-объектная информация
- •Недостатки и преимущества использования сигналов и слотов
- •Сигналы.
- •Соединение и разъединение объектов.
- •Общие методы управления последовательных контейнеров
- •Методы контейнера qVector
- •Методы контейнера qList:
- •Методы контейнера Qstack:
- •Методы контейнера qQueue:
- •Методы управления ассоциативными контейнерами:
- •Методы контейнера qMap:
- •Методы контейнера qHash:
- •Методы контейнера qSet:
- •Итераторы
- •Итераторы в стиле Java
- •Итераторы в стиле stl
- •Принцип работы с оператором foreach
- •Компоновка виджетов на форме.
- •Разделители
- •Области с прокруткой
Общие методы управления последовательных контейнеров
Оператор |
Описание |
+ |
Объединение элементов двух контейнеров. |
+= |
Добавление элементов в контейнер. |
<< |
Добавление элементов в контейнер. |
at() |
Возвращает указанный элемент. |
back()[STI] last()[Java] |
Возвращает ссылку на последний элемент. Этот метод предполагает, что контейнер НЕ пустой. |
contains() |
Подсчитывает количество двойников элемента. |
erase() |
Удаляет элемент, расположенный на позиции итератора, передаваемого в метод. |
front()[STI] first() |
Возвращает ссылку на первый элемент контейнера. Этот метод предполагает, что контейнер НЕ пустой. |
indexOf() |
Возвращает позицию первого совпадения, найденного в контейнере элемента, в соответствии с переданным в метод значением. |
lastIndexOf() |
Возвращает позицию последнего совпадения, найденного в контейнере элемента, с соответствии с переданным в метода значением. |
mid() |
Возвращает контейнер, содержащий копии элементов, задаваемых позицией и количеством. |
pop_back() |
Удаление последнего элемента контейнера. |
pop_front() |
Удаляет первый элемент контейнера. |
push_back()[STI] append() |
Добавляют один элемент в конец контейнера. |
push_front()[STI] prepend() |
Добавляют один элемент в начало контейнера. |
replace() |
Удаляет элемент, находящийся на заданной позиции и имеющий определенное значение. |
Вектор QVector – это структура данных, очень похожая на обычный массив.
Использование класса вектора предоставляет преимущества по сравнению с обычными массивами. Так, например, можно получить количество элементов, содержащихся в нем, или динамически изменить его размер. Также контейнер является самой экономичной структурой по сравнению с остальными.
Методы контейнера qVector
Метод |
Описание |
data() |
Возвращает указатель на данные вектора. |
fill() |
Присваивает значения всем элементам вектора. |
reserve() |
Резервирует память для количества элементов в соответствии с переданным значением. |
resize() |
Устанавливает размер вектора в соответствии с переданным значением. |
toList() |
Возвращает объект QList с элементами, содержащимися в векторе. |
Массив байтов QByteArrayт - этот класс очень похож на QVector, но разница заключается в том, что в нем допускается хранение только элементов, имеющих размер в один байт. Количество элементов массива можно задавать в конструкторе, а доступ к ним осуществляется по средствам оператора [].
Массив битов QBitArray - Этот класс управляет битовым массивом. Каждое из сохраняемых значений занимает только один бит. Для операций с битами этот класс предоставляет методы для чтения и записи( testBit() setBit()
Список QList и QLinkedList – это структура данных, представляющая собой упорядоченный набор, связанных друг с другом элементов. Преимущества списков по сравнению с векторами и очередями состоит в том, что вставка и удаление элементов в любой позиции происходит эффективнее, т.к. относительно вставляемой позиции перемещается только минимальное количество указателей. Исключением является только вставка в центр списка.