siis on mälus tegelikult koht vaid ühe punkti andmete jaoks, muutujate p1 ning p2 kaudu pääseb lihtsalt ligi samadele andmetele. 34 Nii et kui ühe muutuja kaudu andmeid muuta: p1.SetX(7); siis muutuvad andmed ka teise märksõna alt paistvas vaates. Ehk siis ükskõik, kas andmete poole pöörduda p1 või p2 kaudu ikka saan tegelikult samad väärtused. Console.WriteLine(p2.GetNr()+" "+p2.GetX()+" "+p2.GetY()); trükib välja 1 7 4 ehkki esialgu olid koordinaatideks 3 ja 4 ning p2 kohe deklareerimisel polnud sugugi algne koht esimese punkti andmetele ligi pääsemiseks. Punkt järjekorranumbriga 2 on alles p3, sest tema loomisel käivitati uuesti Punkti konstruktor loodi uus eksemplar, mille käigus suurendati loendurit ning anti uued kohad andmete mälus hoidmiseks. Nüüd siis eelnevate seletuste kood tervikuna. using System;
Punkt p2=p1; //Kasutab sama mälupiirkonda siis on mälus tegelikult koht vaid ühe punkti andmete jaoks, muutujate p1 ning p2 kaudu pääseb lihtsalt ligi samadele andmetele. Nii et kui ühe muutuja kaudu andmeid muuta: p1.SetX(7); siis muutuvad andmed ka teise märksõna alt paistvas vaates. Ehk siis ükskõik, kas andmete poole pöörduda p1 või p2 kaudu ikka saan tegelikult samad väärtused. Console.WriteLine(p2.GetNr()+" "+p2.GetX()+" "+p2.GetY()); trükib välja 1 7 4 ehkki esialgu olid koordinaatideks 3 ja 4 ning p2 kohe deklareerimisel polnud sugugi algne koht esimese punkti andmetele ligi pääsemiseks. Punkt järjekorranumbriga 2 on alles p3, sest tema loomisel käivitati uuesti Punkti konstruktor loodi uus eksemplar, mille käigus suurendati loendurit ning anti uued kohad andmete mälus hoidmiseks. Nüüd siis eelnevate seletuste kood tervikuna. using System; namespace Punktid4{
Punkt p2=p1; //Kasutab sama mälupiirkonda siis on mälus tegelikult koht vaid ühe punkti andmete jaoks, muutujate p1 ning p2 kaudu pääseb lihtsalt ligi samadele andmetele. Nii et kui ühe muutuja kaudu andmeid muuta: p1.SetX(7); siis muutuvad andmed ka teise märksõna alt paistvas vaates. Ehk siis ükskõik, kas andmete poole pöörduda p1 või p2 kaudu ikka saan tegelikult samad väärtused. Console.WriteLine(p2.GetNr()+" "+p2.GetX()+" "+p2.GetY()); trükib välja 1 7 4 ehkki esialgu olid koordinaatideks 3 ja 4 ning p2 kohe deklareerimisel polnud sugugi algne koht esimese punkti andmetele ligi pääsemiseks. Punkt järjekorranumbriga 2 on alles p3, sest tema loomisel käivitati uuesti Punkti konstruktor loodi uus eksemplar, mille käigus suurendati loendurit ning anti uued kohad andmete mälus hoidmiseks. Nüüd siis eelnevate seletuste kood tervikuna. using System;