9- ma’ruza mavzu: do’ST FUNKSIYA VA do’st sinflar


book_series::price = price


Download 50.06 Kb.
bet6/12
Sana10.02.2023
Hajmi50.06 Kb.
#1186380
1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
9- ma\'ruza matni

book_series::price = price;
}
void book_series:: show_book (void){
cout << "Narx: " << price << endl;
cout << "Betlar: " << page_count << endl;
}
int main() {
book_series programming(213.95);
book_series word(19.95);
word.set_pages(256);
programming.show_book ();
word.show_book() ;
cout << endl << "page_count ning o'zgarishi " << endl;
programming.set_pages(512);
programming.show_book();
word.show_book();
return 0;
}

Ko‘rinib turganidek, sinf page_count ni static int sifatida e’lon qiladi. Sinfni aniqlagandan so‘ng, dastur shu vaqtning o‘zida page_count elementini global o‘zgaruvchi sifatida e’lon qiladi. Dastur page_count elementini o‘zgartirganda, o‘zgarish shu vaqtning o‘zidayoq book_series sinfining barcha obyektlarida namoyon bo‘ladi.
Agar obyektlar mavjud bo‘lmasa, public static atributli elementlardan foydalanish. Sinf elementini static kabi e’lon qilishda bu element ushbu sinfning barcha obyektlari tomonidan birgalikda qo‘llanadi. Biroq shunday vaziyatlar yuz berishi mumkinki, dastur hali obyektni yaratganicha yo‘q, ammo u elementdan foydalanishi kerak. Elementdan foydalanish uchun dastur uni public va static sifatida e’lon qilishi kerak. Masalan, quyidagi dasturda, xatto book_series sinfidagi obyektlar mavjud bo‘lmasa ham, bu sinfning page_count elementidan foydalaniladi:
#include
using namespace std;
class book_series{
public:
static int page_count;
private:

Download 50.06 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   12




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling