
15.5 Пример класса Tkplk
#include <iostream.h >
#include <conio.h >
#include <string.h >
class Tkplk {
private: int sum;
public: int hei, wei, cvet;
char nazv[20];
void show (int kodrm) ;
void add (int kop);
Tkplk ( int , int , int ,char * ); //это прототип конструктора
//- - - - - - - - - - - - - - - -
int dzin() { // разбиваем копилку
cout<< " Broken with sum= "<<sum<<endl; return 1; }
}; // end of class - - - - - - - - - - - - - - - -
void Tkplk::show ( int kodrm) {
cout << "ris. kopilki with hei="
<< hei<<" wei= "<<wei<<" cvet="<<cvet<<endl;
cout<< " It is ";
for(int j=0; j<strlen(nazv);j++) cout<<nazv[j];
cout<<endl; if( kodrm==1) cout<< "ris. ramki"<<endl;
}
//- - - - - - - - - - - - - - - -
void Tkplk::add (int kop) {
sum +=kop; }
//- - - - - - - - - - - - - - - -
Tkplk::Tkplk ( int he=10, int we=10, int cv=10,char *nz="cat" )
{ sum=0; hei=he; wei=we;
cvet=cv;
for (int m=0; m<=strlen(nz); m++) nazv[m]=nz[m];
// <= for last symbol '\0'
}
// - - - - - - - - - - - - -
void main() {
Tkplk myKplk1, myKplk2(15,15,15,"tiger");
cout<< " myKplk1.hei="<<myKplk1.hei <<endl;
cout<< " myKplk2.hei="<<myKplk2.hei <<endl;
cout<< " strlen(myKplk2.nazv)="<<strlen (myKplk2.nazv);
cout<<endl;
myKplk1.show(1); myKplk2.show(0);
cout<<"end show"<<endl;
myKplk2.add(50); myKplk2.add(30);
myKplk1. dzin(); // cout<<myKplk1.sum;
myKplk2.dzin(); getch();
}
// - - - - - - - - - - --
15.6 Заключение к лекции 15
1. Класс содержит данные, методы и конструкторы, причем любая часть или любая пара
из этих трех частей может отсутствовать.
2. Обычно методы, т.е. принадлежащие классу функции, записываются вне
определения класса с указанием полного имени
тип_функц класс : :функц( аргументы){. . . текст функции . . .}
В этом случае наличие прототипа функции внутри определения класса обязательно.
Это правило относится и к конструкторам класса.
3. Для работы с элементами класса должны быть созданы объект или объекты
этого класса. Обращение к элементу записывается с именем объекта или с указателем
на объект.
15.7 Список лабораторных работ
1. Символьная и растровая графика.
Программа со строками без указателей и вывод в файл.
Программа с указателями и оператором new.
Программа с классом.
Программа для Builder.
Моделирование схем в PSPICE.
Контрольная работа: составить текст какого-либо простого класса.