Razlika med zunaj in ref. V C #

Ključne razlike - ven vs ref v C #
 

C # je sodoben programski jezik, ki ga je razvil Microsoft. Uporablja se za razvoj različnih aplikacij za namizje, splet in mobilne naprave. Funkcije ali metode je koncept v programiranju. Tista skupina stavkov, ki se uporabljajo za izvajanje določene naloge, je znana kot funkcija ali metoda. V programih C # se izvedba začne od main (). Je primer metode. Ko kličete metodo, se podatki posredujejo metodi ali prejemajo od metode. Metoda, ki kliče novo metodo, je znana kot klicanje metode. Nova metoda je znana kot imenovana metoda. Za upravljanje prehodnih vrednosti in ponovno dobivanje rezultata C # uporablja parametre. Vredni so parametri, izhodni parametri in referenčni parametri. Parametri vrednosti se uporabljajo za prenos parametrov v metodo po vrednosti. Referenčni parametri se uporabljajo za prenos parametrov na metodo po referenci. Izhodni parametri se uporabljajo za vrnitev rezultata nazaj iz metode. V C # se za izhodne parametre uporablja ključna beseda out, ključna beseda ref pa za referenčne parametre. The ključna razlika med ven in ref v C # je to, out je ključna beseda, ki se uporablja za napotitev izhodnega parametra, ki se uporablja za prenos rezultatov iz klicane metode v klicno metodo, medtem ko je ref ključna beseda za napotitev referenčnega parametra, ki se uporablja za prenos podatkov iz klicne metode v imenovano metodo in za sprejemanje podatkov od klicane metode do metode klica.

VSEBINA

1. Pregled in ključne razlike
2. Kaj je v C #
3. Kaj je ref. V C #
4. Podobnosti med zunanjim in ref. V C #
5. Primerjava ob strani - v primerjavi s C # v tabeli
6. Povzetek

Kaj je v C #?

Sintaksa funkcije ali metode je naslednja. Metoda vsebuje številne elemente, kot so ime metode, seznam parametrov, vrsta vrnitve in specifikator dostopa.

(seznam parametrov)

// izjave za izvedbo

Vsaka metoda ima edinstveno metodo za klic funkcije. Izvedljive izjave so znotraj kodrastih naramnic. Vrsta vrnitve pojasnjuje, ali funkcija vrne vrednost ali ne. Kadar ni povratnega tipa, se imenuje neveljaven. Specifik dostopa se uporablja za določanje dostopnosti metode v aplikaciji. Parametri se uporabljajo za sprejem ali posredovanje podatkov metodi. Obstajajo lahko tudi metode brez parametrov. Parametri so lahko vrednostni parametri, izhodni parametri ali referenčni parametri.

Izhodni parametri se uporabljajo za vrnitev rezultatov nazaj v klicno metodo. Za to je treba parameter razglasiti s ključno besedo ven. Izhodni parameter ne ustvari nove lokacije za shranjevanje. Na splošno metoda vrne eno vrednost. Toda v C # je mogoče vrniti dve vrednosti iz funkcije z uporabo izhodnih parametrov. Glejte spodnji program.

aplikacija za imenski prostor1

            javni razred Izračun

javni neveljavni prikaz (zunaj a, zunaj b)

int vrednost = 5;

a = vrednost;

b = vrednost;

a = a * a;

b = b * b;

javni statični void main (String [] args)

int vrednost1 = 10, vrednost2 = 20;

Izračun cal = nov Izračun ();

cal.display (out value1, out value2);

Console.ReadLine ();

Funkcija prikaza se pokliče iz glavne metode. Vrednost1 in vrednost dve imata 10 in 20, vendar ju metoda ne upošteva. Vrednost a je 25, vrednost b pa je tudi 25 v funkciji. Zato se te vrednosti vrnejo. Ko natisnete vrednost1 in vrednost2, ne bosta dali 10 in 20. Namesto tega bo natisnila 25 in 25. Z uporabo ključne besede ven lahko iz metode vrnete več vrednosti..

Kaj je ref. V C #?

Pri podajanju parametrov po vrednosti se ustvari novo mesto za shranjevanje za vsak parameter. Dejanski parametri, poslani iz glavnega programa, se ne spremenijo. Namesto tega se te vrednosti kopirajo na ločeno mesto. Te nove spremenljive kopije imenujemo formalni parametri. Glej spodnjo kodo.

aplikacija za imenski prostor1

javni razred Izračun

javna izmenjava ničnosti (int x, int y)

int temp;

temp = x;

x = y;

y = temp;

javni statični void main (String [] args)

Izračun cal = nov Izračun ();

int p = 2;

int q = 3;

cal.swap (p, q);

Console.WriteLine (p);

Console.WriteLine (q);

Console.ReadLine ();

Glede na zgornji program ima razred za izračun metodo swap (). V glavnem programu se ustvari objekt tipa Izračun. Obstajata dve vrednosti, kot sta p in q. Spremenljivka p ima vrednost 2, q spremenljivka pa vrednost 3. Ti dve vrednosti se preneseta v metodo zamenjave. Pri metodi zamenjave se vrednost 2 kopira v spremenljivko x, vrednost 3 pa v kopijo y. Z uporabo spremenljivke temp se vrednosti zamenjajo. Nazaj v glavnem programu se pri tiskanju p in q vrednosti ne zamenjajo. Vrednost p je še vedno 2, q pa vrednost 3. Tudi pri metodi swap se vrednosti zamenjajo, vendar se ne odražajo v glavnem programu.

Za razliko od zgornjih vrednosti, je mogoče parametre posredovati referenčno. Referenčna spremenljivka je referenca na pomnilniško lokacijo. Nova spominska lokacija ni ustvarjena. Spremembe metode se odražajo v glavnem programu. V C # se referenčni parametri napotijo ​​s pomočjo ključne besede ref. Glejte spodnji program.

aplikacija za imenski prostor1

javni razred Izračun

javna izmenjava ničnosti (ref int x, ref int y)

int temp;

temp = x;

x = y;

y = temp;

javni statični void main (String [] args)

Izračun cal = nov Izračun ();

int p = 2;

int q = 3;

zamenjava cal. (ref p, ref q);

Console.WriteLine (p);

Console.WriteLine (q);

Console.ReadLine ();

Glede na zgornji program ima razred Izračun metodo swap. V glavnem programu se ustvari objekt tipa Izračun. Dve spremenljivki, kot sta p in q. Spremenljivka p ima vrednost 2, q spremenljivka pa vrednost 3. Namesto da bi prenesli vrednosti, se sklicevanje na pomnilniška mesta p in q prenese na metodo. Te referenčne spremenljivke se nanašajo na ref. Namesto izmenjave vrednosti na novi lokaciji se spremembe zamenjajo v dejanskih parametrih. Ko natisnete vrednosti p in q glavnega programa, bo dal zamenjane vrednosti. Zdaj je vrednost p 3, q ​​pa vrednost 2.

Kakšna je podobnost med zunanjim in ref. V C #?

  • Obe sta ključni besedi, ki se uporabljata za napotitev parametrov metode.

Kakšna je razlika med zunaj in ref. V C #?

ven proti ref v C #

Out je ključna beseda v C #, ki se uporablja za sklicevanje na izhodni parameter. Uporablja se za prenos rezultatov iz imenovane metode na klicanje metode. Ref je ključna beseda v C #, ki se uporablja za sklicevanje na referenčni parameter. Uporablja se za prenos podatkov iz klicne metode v imenovano metodo in za vrnitev podatkov iz klicane metode v klicno metodo.
Funkcionalnost
Ko uporabite ključno besedo ven, se podatki lahko prenašajo iz načina klica na imenovano metodo. Toda ti podatki se zavržejo. Uporablja se za prenos rezultata klicni metodi iz klicane metode. Pri uporabi ključne besede ref se podatki prenesejo iz klicne metode v klicano metodo, manipulirani podatki pa se vrnejo nazaj k klicni metodi.
Prenos podatkov
Ko uporabite ključno besedo ven, se podatki posredujejo na en način, ki se imenuje metoda klicni metodi. Pri uporabi ključne besede ref se podatki posredujejo na dva načina, in sicer od načina klica do imenovane metode in od klicane metode do klicne metode.

Povzetek - ven vs ref v C # 

Ko prikličete metodo, bo morda potrebno, da vrednosti prenesete v metodo in dobite rezultate iz metode. C # ima različne parametre za dosego tega. Parametri vrednosti se uporabljajo za prenos parametrov v metodo po vrednosti. Referenčni parametri se uporabljajo za prenos parametrov na metodo po referenci. Izhodni parametri se uporabljajo za vrnitev rezultata nazaj iz metode. V C # se za izhodne parametre uporablja ključna beseda out, ključna beseda ref pa za referenčne parametre. Razlika med out in ref v C # je v tem, da je out ključna beseda, ki se uporablja za napotitev izhodnega parametra, ki se uporablja za prenos rezultatov iz imenovane metode v metodo klica, medtem ko je ref ključna beseda za sklic referenčnega parametra, ki se uporablja za prenos podatkov iz klicna metoda klicani metodi in prejemanje podatkov iz imenovane metode v način klica.

Prenesite PDF ven iz ref v C #

Lahko prenesete PDF različico tega članka in jo uporabite za namene brez povezave, kot je navedeno v navodilu. Prenesite PDF različico tukaj: Razlika med Out in Ref in C #

Referenca:

1.tutorialspoint.com. "Metode C #." Točka. Na voljo tukaj 
2.dnfvideo. C # Out parametri Vs REF parametri, .NET Intervju Priprava videoposnetkov, 28. september 2015. Na voljo tukaj  

Vljudnost slik:

1. 'Ostro', Mothmolevna - Lastno delo, (Javna domena) prek Commons Wikimedia