IV. Хисобот мазмуни
1. Титул варақаси: фан номи; иш мавзуси ва рақами; талабанинг фамилияси, исми ва отасининг исми; бажариш вақти.
2. Масалани қўйилиши. Масалани аниқ қўйилиши, яни қандай синф хамда кандай конструкторлар, функция – компоненталар ва х.к.лар дастурда амалга оширилиши керак.
3. Фойдаланувчи синфни изохлар билан аниқлаш.
4. Конструктор ва деструкторлар ишини амалга ошириш.
5. Объект ва функция кўрсаткичлардан фойдаланишни кўрсатувчи дастур қисмини тушунтиришлар билан амалга ошириш.
6. Қандай ва қайси жойда конструктор ва деструктор чақирилиётганини кўрсатувчи асосий дастурнинг листинги.
IV. Услубий кўрсатмалар
1. Синф таърифига мисол.
const int LNAME=25;
class STUDENT{
char name[LNAME]; // ном
int age; // ёш
float grade; // рейтинг
static int N; // статик компонента
public:
STUDENT(); // параметрсиз конструктор
STUDENT(char*,int,float); // параметрли конструктор
STUDENT(const STUDENT&); // нусха олиш конструктори
~STUDENT();
static int& count(){return N;} // статик компонент-функция
char * GetName() ;
int GetAge() const;
float GetGrade() const;
void SetName(char*);
void SetAge(int);
void SetGrade(float);
void Set(char*,int,float);
void Show(); };
int STUDENT:: N = 0; // статик компонента-маълумот инициализацияси
Юқоридаги name майдонни кўрсаткич сифатида таърифлаш мумкин: char* name. Лекин бу холда компонент-функциялар мураккаблашади.
2. Маълумот чиқарувчи конструкторга мисол.
STUDENT::STUDENT(char*NAME,int AGE,float GRADE)
{
strcpy(name,NAME); age=AGE; grade=GRADE; N++;
cout<< \n Параметрли конструктор қуйидаги объект учун чақирилган <
}
3. Дастурда нусха олиш конструкторини чақириш хамма усулларини кўриб чиқиш лозим. Нусха олиш конструктори қуйидаги холларда чақирилади:
а) бир объектдан бошқа объектни инициализация қилиш учун ишлатилганда
Мисол.
Do'stlaringiz bilan baham: |