Indítsa újra szereplők c # - mi ez és hogyan kell kezelni azt

Amikor a fejlődő alkalmazások gyakran vannak írva, hogy milyen típusú osztályok: teszt
public int a;
public int b;
>

Miért olyan osztályok helyett szerkezet? - gyakran ilyen prototípusok mindegy vannak módszerek, de a kérdés most nem róluk szól, így a példa kódot, és ők nem.







Most viszont, hogy a tényleges probléma: mondjuk szeretnék tervezni a kód szépen, és írni valami ilyesmit: class MainClass
public static void Main # 40; # 91: string; # 93; args # 41;
teszt tA = új teszt # 40; 1, 41 # 2 ;;
vizsgálat, TB = új teszt # 40; 1, 1 # 41 ;;

teszt tC = tA + tB;
>> és kap TC paraméter a = 2 és b = 3, a lényeg az, hogy a JIT fordító nem tudja, mit kell tennie az osztállyal. Ahhoz, hogy a fenti kódot, hogy a munka, újra kell tölteni egyoperandusú ismétléseket. Ehhez adjuk hozzá a mi osztály megfelelő funkciót, és megszerezni a következő osztály típusa: class teszt






public int a;
public int b;

nyilvános teszt # 40; int _a, int _b # 41;
a = _a;
b = _b;
>

public static teszt üzemben + # 40; teszt t1, vizsgálati t2 # 41;
visszaút új teszt # 40; t1.a + t1.a, t1.b + t2.b # 41 ;;
>

Ezt követően, a kódot a funkció Main, futni fog gond nélkül.

Így ismét teljes kód: class teszt
public int a;
public int b;

nyilvános teszt # 40; int _a, int _b # 41;
a = _a;
b = _b;
>

public static teszt üzemben + # 40; teszt t1, vizsgálati t2 # 41;
visszaút új teszt # 40; t1.a + t1.a, t1.b + t2.b # 41 ;;
>

osztály MainClass
public static void Main # 40; # 91: string; # 93; args # 41;


teszt tA = új teszt # 40; 1, 41 # 2 ;;
vizsgálat, TB = új teszt # 40; 1, 1 # 41 ;;

teszt tC = tA + tB;

Console.WriteLine # 40; "" tC.a, tC.b # 41 ;; //

Tisztelettel, Vladimir Surgai.