Funksional aşırı yükləmə ilə operatorun həddən artıq yüklənməsi (cədvəl forması) arasındakı fərq nədir?


cavab 1:

Tərif:

Funksiyanın həddən artıq yüklənməsi:

Eyni adın bir neçə funksiyasını aktivləşdirən C ++ bir funksiya fərqli parametr növləri ilə və ya fərqli sayda parametrlərlə təyin edilə bilər. Bu funksiyaya funksiyanın həddən artıq yüklənməsi deyilir. Müvafiq funksiya, yüklənmiş funksiyada parametrlərin / arqumentlərin sayını və ya növlərini araşdıraraq tərtibçi tərəfindən müəyyən edilir. Həddən artıq yükləmə ilə müxtəlif funksiya adlarına qoyulan investisiyalar azalır və oxşar funksiyalar birdən çox funksiya ilə yerinə yetirilir.

Operatorun həddən artıq yüklənməsi:

C ++-də operatorların yenidən təyin olunmasına imkan verən bir funksiya. Bu funksiya istifadəçi təyin olunan obyektləri emal edir. Bütün yüklənmiş operatorlar ekvivalent olan funksiya çağırışları üçün sintaktik şəkər təmin edir. Fundamental dil dəyişikliklərini əlavə etmədən / dəyişdirmədən, operatorun həddən artıq yüklənməsi xoş bir fasad təmin edir.

Məsələn:

Funksiyanın həddən artıq yüklənməsi:

// çox yüklənmiş funksiyalar

float cəmi (int, int);

float sum (float, float);

int main () {

// Bu ikinci funksiyanı çağırır

cout << cəmi (15.7f, 12.7f) << endl;

// Bu ilk funksiyanı çağırır

cout << cəmi (200, 100) << endl;

qayıt 0;

}

üzən məbləğ (int a, int b) {

a + b qayıt;

}

üzmək cəmi (float a, float b) {

a + b qayıt;

}

Operatorun həddən artıq yüklənməsi:

MyClass sinfi

{

int i = 0;

float f = 0.0;

İctimai:

MyClass operatoru ++ () // operatoru yükləmək

{

i = i + 1;

f = f + 1.0;

qayıt * bu; // Çağırış obyektinə işarə edən bu göstərici

}

MyClass şou ()

{

cout << "Elementlər: \ n" cout

}

};

int main ()

{

MyClass a;

++ a; // Aşırı yüklənmiş operator funksiyası ++ () a-nın bu göstəricisini qaytarır

bir şou ();

retun 0;

}