Operator overloading

Met het keyword Operator gevolgd door de eigelijke operator ( dus of - of * ) geef je aan welke operator je wilt overridden.

 

Als je bijvoorbeeld een struct aanmaakt die een integer waarde inhoud en vervolgens nog een struct aanmaakt die een integer waarde, zou je bijvoorbeeld het optellen kunnen overriden door operator overloading.
In deze methode tel je dan de waardes van de integers bij elkaar op en retourneer je deze als een nieuwe object van deze class of struct.

Voorbeeld van een struct met operator overloading:
nsoperator
{
public struct clsoperator
{
public int nummer1;
public int nummer2;
public clsoperator(int een, int twee)
{
this.nummer1 = een;
this.nummer2 = twee;
}
public static clsoperator operator (clsoperator een, clsoperator twee)
{
return new clsoperator (een.nummer1 twee.nummer1 ,een.nummer2 twee.nummer2 );
}
}
}
 

namespace

Dit overloading gebruik je dan op de volgende manier:

nsoperator.clsoperator een = new nsoperator.clsoperator(1, 1);
nsoperator.clsoperator twee = new nsoperator.clsoperator(2, 2);
nsoperator.clsoperator opgeteld = een + twee;
MessageBox.Show(opgeteld.nummer1.ToString () );
MessageBox.Show(opgeteld.nummer2.ToString () );

 

{{opmerking.Naam}}:

{{opmerking.OpmerkingText}}

            

Saving your comment....

Naam is verplicht!
Email is verplicht!
Opmerking is verplicht!