30
Obyekt mavjud bo’lmaganda, public static atributli elementlardan
foydalanish
Sinfning barcha obyektlarida o’zaro moslikda foydalaniladigan,
elementi static
sifatida e’lon qilinishi tushinarli bo’ldi, lekin, shunday holat bo’lishi mumkin: hech
qanday obyekt yaratilmagan, ammo, ushbu elementdan foydalanish zarur.
Dasturda
bu elementdan foydalanish uchun, uni
public hamda
static deb e’lon qilish zarur.
Ushbu dasturda huddi shu holatga e’tibor qaratilgan.
Bu holatni ifodalaydiga dasturning kodi quyida ifodalangan:
#include
//strcpy() uchun
#include
//printf() uchun
#include
//_getch() uchun
using
namespace
std;
class
book_series
{
book_series();
public
:
static
void
show_book(
void
);
//funksiyaning statik elementini chop etish uchun,
ushbu atribut qo`shiladi
static
int
page_count;
private
:
char
title [64];
31
char
author[64];
float
price;
};
int
book_series
::page_count;
//O`zgaruvchini global o`zgaruvchi sifatida e'lon qilish
void
book_series
::show_book (
void
)
{
printf(
"Sahifalar soni=%d\n"
,page_count);
}
void
main(
void
)
{
book_series
::page_count = 256;
/*o`zgaruvchiga 256 qiymati o`zlashtirilgan*/
book_series
::show_book();
_getch();
}
Natija:
1. Berilgan topshiriqda, himoyalangan elementga qiymat obyektlar
yordamida
o’zlashtirilsin.
2. Berilgan topshiriqda, himoyalangan (statik)
elementga qiymat obyektsiz
o’zlashtirilsin.