Definiție și clasa de suprasarcină operatorii din c

În C ++ puteți defini operatori personalizate pentru propriile lor tipuri de date. Operatorul este definit ca o funcție de membru de clasă obișnuită numai după determinarea tipului de retur este pus operatorul de cuvinte cheie.

EXEMPLU operatorului 'determinare:

Operatorul poate sa fie unare sau binare. Operatorul unar are argumente. De exemplu, operatorul negație - „!“. Un operator binar are un parametru suplimentar. De exemplu, în cazul adăugării, primirea unui al doilea termen.

Pentru a clarifica imaginea, încercați să scrie clasa simple_fraction. care va descrie o fracție simplă cu numărătorul întreg și numitor. Și definim operatorii de adunare, scădere, înmulțire și împărțire pentru această clasă.

Pentru o operație de divizare, vom face, de asemenea, o divizie de control de fond de la zero.

Un exemplu de utilizare a clasei simple_fraction:

Operatorii pot fi supraîncărcat în același mod ca și funcții de membru al clasei regulate. De exemplu, este posibil să se supraîncarce operatorul plus două fracții simple, care va returna o nouă fracțiune simplă. Apoi, va trebui să conducă la un numitor comun al fracțiunii și a reveni o altă fracție simplă.

Sarcina: Îmbunătățirea clasa simple_fraction. Repornirea operatorii adunare, scădere, înmulțire și diviziune, astfel încât a fost posibil să se opereze pe două fracții simple și de a obține o nouă fracțiune simplă. Punerea în aplicare a aduce cele două fracțiuni la un numitor comun.

Un exemplu de utilizare a clasei viitoare:

articole similare