Синф объектларининг массиви
Синф объектларидан массивлар қуриш мумкин. Объектлар массивини эълон қилиш синтаксиси оддий ўзгарувчилар массивини эълонига ўхшаш. Масалан, 10 та S синф объектидан иборат массив эълони қуйидагича бўлади:
S obekt_massiv[10];
Компилятор томонидан бу массивни яратиш учун у синф объектларининг келишув бўйича конструкторидан фойдаланиши шарт. Шу сабабли, компилятор ўзи синф учун конструктор яратишига таянмасдан, синф объектларининг массивини эълон қилишда синф таркибига келишув бўйича конструктор киритиш зарур.
Объектлар массивига мурожаат худди ихтиёрий турдаги элементлардан иборат массивга мурожаатдек:
#include
class Sinf
{
int a;
public:
Sinf(int n) {a=n;}
int a_Qiymati() {return a;}
};
main()
{
Sinf ob_Sinf[5]={12,23,34,56,67};
for(int i=0; i<4; i++)
{
// массив элементларига мурожаат
cout<
}
cout<<”\n”;
return 0;
}
Программа экранга Sinf синфи ҳар объекти берилган-аъзосининг инициализацияда олган қийматини чоп этади. Инициализациянинг бу усулидан конструктор битта параметерга эга бўлган ҳолда ишлатиш мумкин. Агар конструктор биттадан ортиқ параметрга эга бўлса, инициализациянинг тўлиқ шаклидан фойдаланишга тўғри келади.
#include
class Koord
{
int x,y;
public:
Koord(int _x,int _y){x=_x; y=_y;}
int x_Qiymati(){return x;}
int y_Qiymati(){return y;}
};
main()
{
Koord koord_mas[4][2]=
{ Koord(1,2); Koord(3,4);
Koord(5,6); Koord(7,8);
Koord(9,10); Koord(11,12);
Koord(13,14); Koord(15,16);
}
Do'stlaringiz bilan baham: |