ВУЗ:
Составители:
Рубрика:
ɦɚɫɫɢɜɨɜ, ɜ ɤɨɬɨɪɵɟ ɦɨɠɧɨ ɞɨɛɚɜɥɹɬɶ ɧɨɜɵɟ ɷɥɟɦɟɧɬɵ ɢ ɢɫɤɥɸɱɢɬɶ ɜɨɡ-
ɦɨɠɧɨɫɬɶ ɜɵɯɨɞɚ ɡɚ ɩɪɟɞɟɥɵ ɬɟɤɭɳɟɝɨ ɪɚɡɦɟɪɚ ɦɚɫɫɢɜɚ. Ɉɛɳɢɟ ɫɜɨɣɫɬɜɚ
ɦɚɫɫɢɜɨɜ ɫ ɬɚɤɢɦɢ ɫɜɨɣɫɬɜɚɦɢ, ɧɟ ɡɚɜɢɫɹɳɢɟ ɨɬ ɬɢɩɚ ɷɥɟɦɟɧɬɨɜ ɦɚɫɫɢɜɚ,
ɨɛɴɟɞɢɧɢɦ ɜ ɤɥɚɫɫɟ
TBase, ɚ ɞɥɹ ɦɚɫɫɢɜɨɜ ɫ ɪɚɡɥɢɱɧɵɦɢ ɬɢɩɚɦɢ ɷɥɟɦɟɧ-
ɬɨɜ ɨɛɪɚɡɭɟɦ ɫɜɨɢ ɤɥɚɫɫɵ. Ɉɩɢɫɚɧɢɹ ɤɥɚɫɫɨɜ ɨɛɴɟɞɢɧɢɦ ɜ ɮɚɣɥɟ ɡɚɝɨɥɨɜ-
ɤɨɜ
TBASEARR.H, ɚ ɨɩɪɟɞɟɥɟɧɢɹ ɦɟɬɨɞɨɜ ɩɪɢɜɟɞɟɦ ɜ ɮɚɣɥɟ TBASEARR.CPP.
// ɮɚɣɥ TBASEARR.H
#include <string.h>
#include <iostream.h>
class TBase //ɛɚɡɨɜɵɣ ɤɥɚɫɫ ɞɥɹ ɦɚɫɫɢɜɨɜ ɜɫɟɯ ɬɢɩɨɜ
{
int size, //ɪɚɡɦɟɪ ɷɥɟɦɟɧɬɚ
count, //ɬɟɤɭɳɟɟ ɱɢɫɥɨ ɷɥɟɦɟɧɬɨɜ
maxCount, //ɪɚɡɦɟɪ ɜɵɞɟɥɟɧɧɨɣ ɩɚɦɹɬɢ ɜ ɛɚɣɬɚɯ
delta; //ɩɪɢɪɚɳɟɧɢɟ ɩɚɦɹɬɢ ɜ ɛɚɣɬɚɯ
char *pmem; //ɭɤɚɡɚɬɟɥɶ ɧɚ ɜɵɞɟɥɟɧɧɭɸ ɩɚɦɹɬɶ
int changeSize(); //ɩɟɪɟɪɚɫɩɪɟɞɟɥɟɧɢɟ ɩɚɦɹɬɢ
protected:
void* getAddr(){return (void*)pmem;};
void addNewItem(void*); //ɞɨɛɚɜɥɟɧɢɟ ɜ ɤɨɧɟɰ ɦɚɫɫɢɜɚ
void error(const char* msg){cout<<msg<<endl;};
public:
int getCount(){return count;};
TBase(int s,int m,int d);
TBase();
TBase(TBase&);
~TBase();
};
/* Ɇɚɫɫɢɜ ɫ ɷɥɟɦɟɧɬɚɦɢ ɬɢɩɚ int */
class TIntArray:public TBase
{
public:
int getElem(int index); /* Ɂɧɚɱɟɧɢɟ ɷɥɟɦɟɧɬɚ
ɩɨ ɢɧɞɟɤɫɭ */
void putElem(int index,int &pe); /* Ɂɚɦɟɧɚ ɡɧɚɱɟɧɢɹ
ɷɥɟɦɟɧɬɚ ɩɨ
ɢɧɞɟɤɫɭ */
void addElem(int& el); /* Ⱦɨɛɚɜɥɟɧɢɟ ɷɥɟɦɟɧɬɚ ɜ ɤɨɧɟɰ
ɦɚɫɫɢɜɚ */
TIntArray& add(TIntArray&); /* ɋɥɨɠɟɧɢɟ ɞɜɭɯ ɦɚɫɫɢɜɨɜ
ɉɨɷɥɟɦɟɧɬɧɨ */
TIntArray& subtract(TIntArray&); // ȼɵɱɢɬɚɧɢɟ ɦɚɫɫɢɜɨɜ
void printElem(int index); /* ȼɵɜɨɞ ɡɧɚɱɟɧɢɹ ɷɥɟɦɟɧɬɚ
ɧɚ ɷɤɪɚɧ */
void print(); // ȼɵɜɨɞ ɧɚ ɷɤɪɚɧ ɜɫɟɝɨ ɦɚɫɫɢɜɚ
TIntArray(int m,int d):TBase((int)sizeof(int),m,d){};
// Ʉɨɧɫɬɪɭɤɬɨɪ
TIntArray(TBase& a):TBase(a){}; // Ʉɨɧɫɬɪɭɤɬɨɪ
~TIntArray(); // Ⱦɟɫɬɪɭɤɬɨɪ
};
48
ɦɚɫɫɢɜɨɜ, ɜ ɤɨɬɨɪɵɟ ɦɨɠɧɨ ɞɨɛɚɜɥɹɬɶ ɧɨɜɵɟ ɷɥɟɦɟɧɬɵ ɢ ɢɫɤɥɸɱɢɬɶ ɜɨɡ- ɦɨɠɧɨɫɬɶ ɜɵɯɨɞɚ ɡɚ ɩɪɟɞɟɥɵ ɬɟɤɭɳɟɝɨ ɪɚɡɦɟɪɚ ɦɚɫɫɢɜɚ. Ɉɛɳɢɟ ɫɜɨɣɫɬɜɚ ɦɚɫɫɢɜɨɜ ɫ ɬɚɤɢɦɢ ɫɜɨɣɫɬɜɚɦɢ, ɧɟ ɡɚɜɢɫɹɳɢɟ ɨɬ ɬɢɩɚ ɷɥɟɦɟɧɬɨɜ ɦɚɫɫɢɜɚ, ɨɛɴɟɞɢɧɢɦ ɜ ɤɥɚɫɫɟ TBase, ɚ ɞɥɹ ɦɚɫɫɢɜɨɜ ɫ ɪɚɡɥɢɱɧɵɦɢ ɬɢɩɚɦɢ ɷɥɟɦɟɧ- ɬɨɜ ɨɛɪɚɡɭɟɦ ɫɜɨɢ ɤɥɚɫɫɵ. Ɉɩɢɫɚɧɢɹ ɤɥɚɫɫɨɜ ɨɛɴɟɞɢɧɢɦ ɜ ɮɚɣɥɟ ɡɚɝɨɥɨɜ- ɤɨɜ TBASEARR.H, ɚ ɨɩɪɟɞɟɥɟɧɢɹ ɦɟɬɨɞɨɜ ɩɪɢɜɟɞɟɦ ɜ ɮɚɣɥɟ TBASEARR.CPP. // ɮɚɣɥ TBASEARR.H #include#include class TBase //ɛɚɡɨɜɵɣ ɤɥɚɫɫ ɞɥɹ ɦɚɫɫɢɜɨɜ ɜɫɟɯ ɬɢɩɨɜ { int size, //ɪɚɡɦɟɪ ɷɥɟɦɟɧɬɚ count, //ɬɟɤɭɳɟɟ ɱɢɫɥɨ ɷɥɟɦɟɧɬɨɜ maxCount, //ɪɚɡɦɟɪ ɜɵɞɟɥɟɧɧɨɣ ɩɚɦɹɬɢ ɜ ɛɚɣɬɚɯ delta; //ɩɪɢɪɚɳɟɧɢɟ ɩɚɦɹɬɢ ɜ ɛɚɣɬɚɯ char *pmem; //ɭɤɚɡɚɬɟɥɶ ɧɚ ɜɵɞɟɥɟɧɧɭɸ ɩɚɦɹɬɶ int changeSize(); //ɩɟɪɟɪɚɫɩɪɟɞɟɥɟɧɢɟ ɩɚɦɹɬɢ protected: void* getAddr(){return (void*)pmem;}; void addNewItem(void*); //ɞɨɛɚɜɥɟɧɢɟ ɜ ɤɨɧɟɰ ɦɚɫɫɢɜɚ void error(const char* msg){cout<
Страницы
- « первая
- ‹ предыдущая
- …
- 46
- 47
- 48
- 49
- 50
- …
- следующая ›
- последняя »