Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет189/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   185   186   187   188   189   190   191   192   ...   466
if_greater()
өрнегі 
if_greater
класының келісім бойынша берілген конструкторын шақыру үшін 
қолданылады. Бұл өрнектің орындалу нəтижесі 
if_greater
класының 


212
объектісі болып табылады. Одан ары, осының алдындағы жағдайдағы сияқты
осы объект үшін дөңгелек жақша ішінде жазылған екі аргументі бар функция 
шақырылады.
Келесі 
()
операциясын тек класс əдісі ретінде анықтауға болады. 
Аргументтерінің саны əртүрлі функцияларды шақырудың асыра жүктелген 
операцияларын анықтау мүмкіндігі бар. Функционалды объектілер C++ стан-
дартты кітапханасында кеңінен қолданылады.
Индекстеу операциясының асыра жүктелуі
Əдетте, класс типі индекстеудің мағынысы болатын мəндер жиынын 
көрсететін кезде индекстеу операциясы 
[]
асыра жүктеледі. Индекстеу опе-
рациясы жиынға тиісті элементке сілтеме қайтаруы керек. Мұны бүтін сан-
дар жиымын сақтауға жəне онымен сенімді жұмыс істеуге арналған 
Vect
класынының мысалы арқылы көрсетейік:
#include  
#include  
class Vect{ 
public:
explicit Vect(int n = 10);
Vect(const int a[], int n); //Жиыммен инициалдау
~Vect() { delete [] p; } 
int& operator [] (int i); 
void Print();
...
private: 
int* p; 
int size;
};
Vect::Vect(int n) : size(n){ 
p = new int[size];
}
Vect::Vect(const int a[], int n) : size(n){ 
p = new int[size];
for (int i = 0; i < size; i++) p[i] = a[i];
}
// Индекстеу операциясының асыра жүктелуі: 
int& Vect::operator [] (int i){ 
if(i < 0 || i >= size){


Достарыңызбен бөлісу:
1   ...   185   186   187   188   189   190   191   192   ...   466




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет