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:
Do'stlaringiz bilan baham: |