Dasturlash muhitida satrli ma’lumotlarni yaratish usullari.
Mavzu: Dasturlash muhitida satrli ma’lumotlarni yaratish usullari. Reja: 1.Bir satrli va ko’p satrli vidjetlar. 2.Satrli ma’lumotlarni bezash. 3.Ro’yxatli vidjetlar. 4.Saralash algoritmlarini satrli vidjetlarda qo’llash. 5.Qt dasturlash muhitida satrlar bilan ishlash operatorlari.
1. Qt dasturlash muhitida s atrlar bilan ishlash operatorlari. 1. Qt da o’zgaruvchilarning quyidagi tiplari mavjud: Qt tipi C++ dagi ekvivalenti Bitlardagi o’lchami qint8 signed char 8 quint8 unsigned char 8 qint16 short 16 quint16 unsigned short 16 qint32 int 32 quint32 unsigned int 32 qint64 __int64 yoki long long 64 quint64 unsigned __int64 yoki unsigned long long 64 qlonglong qint64 ning boshqa ko’rinishi 64 qulonglong quint64 ning boshqa ko’rinishi 64 qreal Double ning boshqa ko’rinishi 64 uchar unsigned char ning boshqa ko’rinishi 8 Oldindan o’rnatilgan qoidalarga asosan short, int, long va long long tiplari ishorali tiplar,ya’ni ular xam manfiy xam musbat qiymatlar qabul qilishi mumkin.
Agarda faqat musbat qiymatlarni qabul qiluvchi o’zgaruvchilar yaratishda unsigned (ishorasiz) kalit so’zidan foydalaniladi. Agar short tipi —32,768 va +32,767 oraliqdagi qiymatlarni qabul qilsa, unsigned short tipi faqat 0 dan 65 535 gacha bo’lgan oraliqdagi qiymatlarni qabul qilishi mumkin. Bool turi chin(true) yoki yolg'on(false) qiymatli bo'lishi mumkin. Bundan tashqari, bool o'rniga raqamli turlardan foydalanish mumkin; bu holda 0 yolg’on(false) va noldan farqli har qanday qiymat chin(true) bo'ladi. Char turi ASCII belgilarini va 8 bitli butun sonlarni (bayt) saqlash uchun ishlatiladi. Ushbu maydondagi butun son, platformaga qarab, ishoraga ega bo’lishi yoki ega bo’lmasligi mumkin.Qt 16-bitli Unicode belgilarini saqlaydigan QChar turini taqdim etadi. Xotirada raqamli turlar (longdan tashqari) Qt tomonidan qo'llab- quvvatlanadigan turli platformalarda bir xil o'lchamlarga ega, ammo ularning namoyishi tizimning bayt tartibiga qarab o'zgaradi. Qt-da QStrings bilan ishlash uchun. • # Fayl boshiga <QString> satrini qo’shish shart; • QString elementlari QChar belgilar turiga kiradi. Satrni qiymat belgilash uchun = operatoridan foydalanishingiz mumkin. • Satrlarni ==, <=,> =,! =,>, < lardan foydalanib taqqoslash mumkin. Natija satr tarkibidagi harflarga bog'liq. • Elementga [] yoki .at (indeks) yordamida murojaat qilish mumkin. Index noldan boshlanadi. • Satrlarni qo’shish uchun +, + = dan foydalanishin mumkin. QString klassi odatiy satrni 16 bitli QChar qiymatlari sifatida saqlaydigan Unicode satrini ifodalaydi, bu erda har bir QChar Unicode 4.0 belgilariga mos keladi. Boshqa ko'plab dasturlash tillaridagi satrlardan farqli o'laroq, QString o'zgartirilishi mumkin. QString turini yaratish usullari: // Инициализация №1: odatiy usul QString str1 = "The night train"; QString a = "love";
// Инициализация №2: ob’yektli usul QString str2("A yellow rose"); // Инициализация №3 std::string s1 = "A blue sky"; QString str3 = s1.c_str(); // Инициализация №4 std::string s2 = "A thick fog"; QString str4 = QString::fromLatin1(s2.data(), s2.size()); // Инициализация №5 char s3[] = "A deep forest"; QString str5(s3); Satr elementlariga murojaat QString sinfining ob'ekti QChar "belgilar" ketma-ketligidir. Satr elementlariga [] operatori yoki at() usuli yordamida murojaat qilish mumkin. Quyidagi misol QString sinfi ob'ekti bo'lgan satrning individual belgilarini chiqaradi: QString a = "Eagle"; // Satrning birinchi elementi с out << a[0] << endl; // Satrning beshinchi elementi с out << a[4] << endl; // Satrning birinchi elementi at() metodi bilan сout << a.at(0) << endl; Qtda satrlar uchun metod va operatorlar quyidagi jadvalda keltirilgan: Metod yoki operator Ma’nosi Misol = Ta’minlash operatori QString s1 = «abcd»; QString s1 = «def»;
==,!=,<,>,<=,>= Logik operatorlar s1!=s2; s1 <s2; isEppty() Satr bo’shligini tekshirish s1.isEmpty(); isNull() Satr null ekanligini tekshirish . s1.isNull(); length() Satr uzunligi . s1.length(); +=,+,append() Satrlarni qo’shish,birlashtirish . s1=s1+s2; s1+=s2;s1.append(s2); replace() Satr bo’lagini boshqa satr bilan almashtirish. s1.replace(«ab»,«12»); toLower(), toUpper() Satr simvollari registrini(kata yoki kichik) o’zgartirish. s1.toUpper(); s1.toLower(); setNum(), number() Sonli qiymatni satrga o’tkazish . s1.setNum(12); s1 = QString::number(12); toDouble(),toInt() Satrni songa aylantirish int i = QString(«123»).toInt(); split() Satrni satrchalarga bo ’ lish QStringList l = QString(«asd as qw qwe awe»).split(« »); join() Berilgan ro’yxatni satrga birlashtirish . QList<QString> l; l<< «as» <<«sd»<<«asd»; QString s = l.join(« »); Funksiya Ma’nosi Misol append Satrga o’ng tomondan satr qo’shish. s="one"; s.append(" two"); // "one