Описание класса QString 2009
[Скачать с сервера (166.1 Kb) - бесплатно] | 29.10.2009, 18:28 |
Классификация методов класса QString, анализ содержимого строки, сравнение строк, поиск подстроки, модифицирующие методы, вставка подстроки, удаление подстроки, очистка строки, замена подстроки, получение подстроки/символа, преобразование строки к другому типу данных, преобразование других типов данных в строку
Фрагменты из лекцииИнициализация строкиЗначение строки можно задать путем присвоения ей либо строковой константы, либо массива символов, заканчивающегося нуль-символом:QString str = "invalid data"; char str_mass[]= "no solution"; // строка языка Си str = str_mass; Строку можно задать как результат склеивания нескольких строк: QString str1= "invalid data"; QString str2= "!!!"; QString str3= " no solution"; QString str; str = str1 + str2 + str3; // строки str1, str2, str3 не // изменяются QString str = QString() + "invalid data" + "!!!" + " no solution"; Анализ содержимого строкиДля определения того факта, что строка заполнена используется метод length(), который возвращает длину строки: QString str; // пустая строкаprintf("String length=%d", str.length()); // результат 0 str = "invalid data"; printf("String length=%d", str.length()); // результат 12 Возможно посимвольное обращение к строке: // Печать первого символа строки printf("First symbol=%c", str[0].toAscii()); Однако можно работать и с подстроками. Для поиска подстрок используются методы indexOf() и lastIndexOf(): QString x = "sticky question"; QString y = "sti"; x.indexOf(y); // returns 0 x.indexOf(y, 1); // returns 10 x.indexOf(y, 10); // returns 10 x.indexOf(y, 11); // returns -1 Для получения части строки в заданной позиции используется метод mid(): QString x = "Nine pineapples"; QString y = x.mid(5, 4); // y == "pine" QString z = x.mid(5); // z == "pineapples" Преобразование строкиДля использования стандартных функций ввода-вывода языка Си строку типа QString необходимо преобразовать к массиву символов, заканчивающемуся нуль-символом. Такое преобразование можно выполнить с использованием метода toAscii(): QString str = "abcdef";printf(str.toAscii().data()); // другой вариант использовать макрос qPrintable() printf(qPrintable(str)); Добавил: COBA (29.10.2009) | Категория: Програм-е на ЯВУ Просмотров: 6571 | Загрузок: 2528 | Рейтинг: 0.0/0 | Теги: |
Комментарии (0) | |