3.1.Mavzuga kirish Key Point.Ushbu mavzuda sinfniloyihalash, protsedurali dasturlash va ob’yektga yo`naltirilgan dasturlash o`rtasidagi farqni tasvirlab berish maqsad qilingan. O`tgan mavzularimizda ob’yekt va sinf tushunchalarining muhim ahamiyat kasb etuvchi jihatlari yoritib berilgan edi. Unda biz qanday qilib sinfni aniqlash, ob’yektlarni yaratish va ulardan foydalanishni o`rgandik. Umuman olganda, ushbu dasturlash kurslarimiz ob’yektga yo`naltirilgan dasturlashdan avval masalalarni yechish va fundamental dasturlash tamoyillarini o`rgatishga qaratilgan. Bu mavzumiz protsedurali dasturlashdan ob’yektga yo`naltirilgan dasturlashga o`tish nuqtasi hisoblanadi. Ushbu mavzuni o`rganish orqali ob’yektga yo`naltirilgan dasturlashning afzallik jixatlari hamda uni qo`llash samaradorliklari haqida bilib olish mumkin.
Bu yerda asosiy e’tibor sinf dizayniga qaratilgan. Mavzu doirasida ob’yektga yo`naltirilgan yondashuvning foydali jixatlarini namoyish etuvchi bir nechta misollardan foydalaniladi. Birinchi misol – C++ kutubxonasi taqdim etuvchi string sinfi. Qolgan misollar esa, yangi sinflarni loyihalash va dasturda ulardan foydalanish masalalarini qamrab olgan.Shuningdek, bu mavzuda tilning ba’zi o`ziga xos xususiyatlari hamda ulardan foydalanishga oid misollar bilan ham tanishib chiqamiz.
3.2. string sinfi Key Point. C++ da string sinfi string turini aniqlaydi. U satrlar bilan ishlashga mo`ljallangan, ko`p qo`llaniluvchi funksiyalardan iborat. C++ da satrlarga ishlov berishning ikki xil yo`li mavjud. Birinchisi – ularni ('\0') nol terminatori bilan tugallangan belgilar massivi sifatida qarash. Nol terminatori satr so`ngini ifodalaydi va bu C-satrlar uchun muhim ahamiyatli hisoblanadi. Boshqa bir yo`li – satrlarga stringsinfidan foydalanib ishlov berish. Biz C-satrlar funksiyalari orqali satrlarni ifodalashimiz va ularga ishlov berishimiz mumkin, lekin, bunday jarayonlarda stringsinfidan foydalanish osonroq kechadi. C-satrlar orqali ishlov berish dasturchidan belgilar massivda qanday joylashganligini bilishni talab etadi. stringsinfiesa dasturchidan quyi darajadagi joylashuv xususiyatlarini yashiradi. Dasturchi faqat tadbiq etish tamoyillari bilan shug`ullanadi. String turini o`rganganimizda bu tur qisqacha, londa qilib tushuntirilgan edi. Biz unda qanday qilib at(index) funksiyasidan foydalangan holda satr belgisini olishimiz va unga murojaatni [] operatori orqali bajarilishini, size() va length() funksiyalari orqali satrdagi belgilar sonini aniqlash mumkinligini o`rgangan edik. Bu mavzuimizda satr ob’yektlaridan foydalanishga oid masalalar keng yoritilgan.