3.2.1. Satrni qurish.
Biz ilgari satrni quyidagicha sintaksis orqali yaratgan edik:
string s = "Welcome to C++";
Bu ko`rsatma satri samarador emas. Chunki uikkibosqichda bajariladi. Unda dastlab, string literalidan foydalangan holda satr ob’yekti hosil qilinadi va keyin uni s obyektiga nusxalaydi.
Satr yaratishning yaxshiroq yo`li – quyidagi kabi konstruktor yordamida satr yaratishdir:
string s("Welcome to C++");
Argumentsiz string konstruktori yordamida bo`sh satrni yaratishimiz mumkin. Masalan, quyidagi ko`rsatma satri bo`sh satrni yaratib beradi:
string s
Shuningdek, quyidagi ko`rsatma satrlarida berilganidek, string konstruktoridan foydalangan holda C-satr satrini yaratishimiz mumkin:
char s1[] = "Good morning";
string s(s1);
Bu yerda s1 – C-satr, s esa, satrli ob’yekt.
3.2.2. Starga qiymat qo`shish.
Biz 3.1-rasmda ko`rsatilgani kabi satrga yangi qiymat kiritish uchun bir qancha qayta yuklovchi funksiyalardan foydalanishimiz mumkin.
3.1-rasm. string sinfi satrga qo`shuvchi funksiyalarni taqdim etadi.
Misol uchun,
string s1("C++ ga");
s1.append(" xush kelibsiz!"); // s1 ga" xush kelibsiz!" ni qo`shadi
cout<< s1 << endl; // Endi s1 ning qiymati:C++ ga xush kelibsiz!
string s2("C va C++ ga");
s2.append(" xush kelibsiz!", 6, 4); // s2 ga "kel" ni qo`shadi
cout<< s2 << endl; //Endi s2 C va C++ ga kel ga teng.
string s3("C va C++ ga");
s3.append(" xush kelibsiz!", 9); // s3 ga " xush kel" ni qo`shadi
cout<< s3<< endl; //Endi s2 C va C++ ga xush kel ga teng.
string s4("Salom!");
s4.append(4, 'C'); //s4 ga "CCCC" ni qo`shadi
cout<< s4 << endl; // Endi s2 Salom!CCCC ga teng.
3.2.3. Satrga ta’minlash.
Biz satrga yangi qiymatlarni ta’minlash uchun 3.2-rasmdagi kabi bir nechta funksiyalardan foydalanishimiz mumkin.
3.2-rasm.string sinfi satrga ta’minlovchi funksiyalarni taqdim etadi.
Misol uchun,
string s1("Xush kelibsiz!");
s1.assign("Samarqand"); //s1 ga “Samarqand” ta’minlanyapti
cout<< s1 << endl; //Endi s1 ning qiymati: Samarqand
string s2("Xush kelibsiz!");
s2.assign("Samarqand, Toshkent", 12, 4); //s2 ga “Tosh” ta’minlanyapti
cout<< s2 << endl; // Endi s2ning qiymati: Tosh
string s3("Xush kelibsiz!");
s3.assign("Samarqand, Toshkent", 5); // s2 ga “Samar” ta’minlanyapti
cout<< s3 << endl; // Endi s3ning qiymati: Samar
string s4("Xush kelibsiz!");
s4.assign(4, 'C'); // s4 ga “CCCC” ta’minlanyapti
cout<< s4 << endl; // Endi s4ning qiymati: CCCC
Dostları ilə paylaş: |