Acasă Dezvoltare Ce este supraîncărcarea operatorului? - definiție din techopedia

Ce este supraîncărcarea operatorului? - definiție din techopedia

Cuprins:

Anonim

Definiție - Ce înseamnă supraîncărcarea operatorului?

Supraîncărcarea operatorului este o tehnică prin care operatorii folosiți într-un limbaj de programare sunt implementați în tipuri definite de utilizator cu logică personalizată care se bazează pe tipurile de argumente transmise.


Supraîncărcarea operatorului facilitează specificarea implementării definite de utilizator pentru operațiuni în care unul sau ambii operanzi sunt de clasă sau tip de structură definite de utilizator. Acest lucru ajută tipurile definite de utilizator să se comporte la fel ca tipurile fundamentale de date primitive. Supraîncărcarea operatorilor este utilă în cazurile în care operatorii folosiți pentru anumite tipuri furnizează semantică legată de contextul domeniului și suport sintactic, așa cum se găsește în limbajul de programare. Este utilizat pentru comoditate, lizibilitate și mentenabilitate sintactică.


Java nu acceptă supraîncărcarea operatorului, cu excepția concatenării cu șiruri pentru care supraîncărcare + operator intern.

Techopedia explică supraîncărcarea operatorului

Operatorii sunt referiți folosind notarea operatorului în expresii și notația funcțională în declarații. Sintaxa, prioritatea și asocierea unui operator nu pot fi modificate folosind declarații de operator definite de utilizator.


De exemplu, operatorii din C # sunt clasificați în funcție de tipul de operație pe care o efectuează. Unele dintre ele sunt supraîncărcate în tipuri definite de utilizator, definindu-le în funcțiile statice ale membrilor și folosind cuvântul cheie operator. Parametrii funcției de operator reprezintă operanzi, în timp ce tipul de retur al unei funcții de operator reprezintă rezultatul operației. Supraîncărcarea este implementată în perechi pentru operatori, cum ar fi operatorii de comparație precum "==" și "! =". Metoda Equals () pentru acești operatori ar trebui să fie anulată pentru a evita avertizarea compilatorului. Supraîncărcarea nu trebuie utilizată pentru operatori, cum ar fi condiționat, logic (și !!), alocare (+ =, - =, etc.), casting și array indexare ().


Este foarte recomandat ca supraîncărcarea operatorului să fie pusă în aplicare, astfel încât rezultatele produse să fie intuitiv din așteptarea implicită a operatorului. Anumite reguli matematice, cum ar fi dreptul comutativ, aplicabile expresiilor cu două operanze, nu pot fi aplicabile atunci când sunt utilizate la supraîncărcarea pentru tipuri, deoarece sunt definite doar pentru operanzi numerici.

Ce este supraîncărcarea operatorului? - definiție din techopedia