Kezdőoldal » Számítástechnika » Programozás » C# programozásban mit takar a...

C# programozásban mit takar a ". " elválasztás ebben az értelmezésben? (bővebben lentebb)

Figyelt kérdés

Sziasztok!


Nemrég kezdtem el foglakozni a C# programozási nyelvvel és Reiter István könyve alapján haladok. Viszont van egy példa amit már nagyon sokszor elolvastam de nem tudom megérteni. Ebben szeretnék tőletek segítséget kérni:


using System;

namespace TestApp

{

class MyClass

{

public int x;

}

class Program

{

static void Main(string[] args)

{

MyClass s = new MyClass();

s.x = 10;

MyClass p = s;

p.x = 14;

Console.WriteLine(s.x);

Console.ReadKey();

}

}

}


A kérdésem igazából az lenne, hogy a két helyen megjelenő s.x és a p.x változókat hogyan kell értelmezni? Valamint a "MyClass s = new MyClass();" sor milyen információt hordoz magában?


Válaszaitokat előre is köszönöm!



2016. máj. 24. 17:11
 1/5 anonim ***** válasza:
50%

Úgy látszik, hogy az "s" egy objektum (MyClass), aminek van egy globális "x" változója.


Vagyis a pont felfogható annak, hogy az adott objektum ("s") egy változójára("x"), vagy eljárására/függvényére (ha van) hivatkozunk.


Pl. A Consol is egy osztály (=objektum), amelynek van "WriteLine", meg "ReadKey" eljárása...

2016. máj. 24. 17:20
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:
50%

Jaaaa és:


"MyClass s = new MyClass();"


Azt az információt hordozza magában, hogy származtatsz (létrehozol) egy osztályból("MyClass") egy példányt ("s")

2016. máj. 24. 17:22
Hasznos számodra ez a válasz?
 3/5 A kérdező kommentje:
Akkor végül is ezzel a példával azt próbálja illusztrálni a szerző, hogy ha az 's' objektum x változójának az értékét (s.x) definiáljuk 10-ként, majd miután kikötöttük, hogy a p = s -el, és a p.x-et definiáljuk 14-ként, akkor ha kiíratjuk az eredeti s.x kombinációt akkor annak az értéke is megváltozik az eredeti 10-ről 14re. Jól gondolom szerinted?
2016. máj. 24. 17:47
 4/5 anonim ***** válasza:
Itt azt magyarázza a szerző hogy, az osztályok referencia típusok, tehát ha egy már meglévő osztályból akarsz egy másik osztályt létrehozni ami megegyezik az eredetivel(ez a MyClass p = s; ) akkor referencia, tehát hivatkozás másolás történik így ha a két példányt külön külön változtatjuk mindegyikben ugyan az lesz eltárolva, mert egy memóriacímre írnak.
2016. máj. 24. 17:52
Hasznos számodra ez a válasz?
 5/5 A kérdező kommentje:
Így már világos! Köszönöm szépen!
2016. máj. 24. 18:04

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!