Rozdiel Medzi Out A Ref V C

Obsah:

Rozdiel Medzi Out A Ref V C
Rozdiel Medzi Out A Ref V C

Video: Rozdiel Medzi Out A Ref V C

Video: Rozdiel Medzi Out A Ref V C
Video: Mossberg 590M 2024, November
Anonim

Kľúčový rozdiel - out vs ref v C #

C # je moderný programovací jazyk vyvinutý spoločnosťou Microsoft. Používa sa na vývoj rôznych aplikácií pre desktop, web a mobilné zariadenia. Funkcie alebo metódy je pojem v programovaní. Táto skupina príkazov, ktorá sa používa na vykonanie konkrétnej úlohy, sa nazýva funkcia alebo metóda. V programoch C # sa vykonávanie začína od main (). Je to príklad metódy. Pri volaní metódy sa údaje odovzdávajú metóde alebo sa z nej prijímajú. Metóda, ktorá volá novú metódu, sa nazýva volanie metódy. Nová metóda je známa ako tzv. Metóda. Na správu odovzdávaných hodnôt a získanie výsledku späť používa C # parametre. Sú to hodnotené parametre, výstupné parametre a referenčné parametre. Hodnotové parametre sa používajú na prenos parametrov do metódy podľa hodnoty. Referenčné parametre sa používajú na prenos parametrov do metódy odkazom. Výstupné parametre sa používajú na odovzdanie výsledku späť z metódy. V C # sa kľúčové slovo out používa na výstupné parametre a kľúčové slovo ref sa používa na referenčné parametre. Kľúčový rozdiel medzi out a ref v C # je ten, že out je kľúčové slovo používané na odkazovanie výstupného parametra, ktorý sa používa na odovzdávanie výsledkov z volanej metódy volanej metóde, zatiaľ čo ref je kľúčové slovo na odkazovanie na referenčný parameter, ktorý sa používa na odovzdanie údaje z volanej metódy do volanej metódy a prijímať údaje z volanej metódy do volacej metódy.out je kľúčové slovo použité na odkazovanie výstupného parametra, ktorý sa používa na prenos výsledkov z volanej metódy do volacej metódy, zatiaľ čo ref je kľúčové slovo, ktoré odkazuje na referenčný parameter, ktorý sa používa na prenos údajov z volacej metódy do volanej metódy a na príjem údajov z volanej metódy na volaciu metódu.out je kľúčové slovo použité na odkazovanie výstupného parametra, ktorý sa používa na prenos výsledkov z volanej metódy do volacej metódy, zatiaľ čo ref je kľúčové slovo, ktoré odkazuje na referenčný parameter, ktorý sa používa na prenos údajov z volacej metódy do volanej metódy a na príjem údajov z volanej metódy na volaciu metódu.

OBSAH

1. Prehľad a kľúčový rozdiel

2. Čo je v C #

3. Čo je v C #

4. Podobnosti medzi out a ref v C #

5. Porovnanie vedľa seba - out vs. ref v C # v tabuľkovej forme

6. Zhrnutie

Čo je v C #?

Syntax funkcie alebo metódy je nasledovná. Metóda má množstvo prvkov, ako je názov metódy, zoznam parametrov, návratový typ a špecifikátor prístupu.

(zoznam parametrov)

{// príkazy na vykonanie

}

Každá metóda má jedinečnú metódu na volanie funkcie. Spustiteľné príkazy sú vo vnútri zložených zátvoriek. Návratový typ vysvetľuje, či funkcia vracia hodnotu alebo nie. Ak neexistuje návratový typ, nazýva sa neplatný. Špecifikátor prístupu sa používa na zadanie prístupnosti metódy v aplikácii. Parametre sa používajú na príjem alebo prenos údajov do metódy. Môžu existovať aj metódy bez parametrov. Parametre môžu byť hodnotené parametre, výstupné parametre alebo referenčné parametre.

Rozdiel medzi out a ref v C #
Rozdiel medzi out a ref v C #

Výstupné parametre sa používajú na prenos výsledkov späť do metódy volania. Preto by sa parameter mal deklarovať bez kľúčového slova. Výstupný parameter nevytvára nové umiestnenie úložiska. Metóda vo všeobecnosti vracia jednu hodnotu. Ale v C # je možné vrátiť dve hodnoty z funkcie pomocou výstupných parametrov. Pozrite si nižšie uvedený program.

namespace application1 {

výpočet verejnej triedy {

public void display (out int a, out int b) {

int hodnota = 5;

a = hodnota;

b = hodnota;

a = a * a;

b = b * b;

}

public static void main (String args) {

int hodnota1 = 10, hodnota2 = 20;

Výpočet cal = nový Výpočet ();

cal.display (out hodnota1, out hodnota2);

Console. ReadLine ();

}

}

}

Funkcia zobrazenia sa volá z hlavnej metódy. Hodnota1 a hodnota dva majú 10 a 20, ale do metódy sa neberú. Hodnota a je 25 a hodnota b je tiež 25 vo funkcii. Preto sa tieto hodnoty vrátia. Pri tlači hodnôt 1 a 2 nebude dávať 10 a 20. Namiesto toho bude tlačiť 25 a 25. Použitím kľúčového slova out je možné z metódy vrátiť viac hodnôt.

Čo je ref v C #?

Pri odovzdávaní parametrov podľa hodnoty sa pre každý parameter vytvorí nové umiestnenie úložiska. Skutočné parametre, ktoré boli odoslané z hlavného programu, sa nezmenia. Namiesto toho sa tieto hodnoty skopírujú na samostatné miesto. Tieto nové variabilné kópie sa nazývajú formálne parametre. Pozrite si nižšie uvedený kód.

namespace application1 {

výpočet verejnej triedy {

public void swap (int x, int y) {

int temp;

teplota = x;

x = y;

y = teplota;

}

public static void main (String args) {

Výpočet cal = nový Výpočet ();

int p = 2;

int q = 3;

cal.swap (p, q);

Console. WriteLine (p);

Console. WriteLine (q);

Console. ReadLine ();

}

}

}

Podľa vyššie uvedeného programu má trieda Výpočet metódu swap (). V hlavnom programe sa vytvorí objekt typu Výpočet. Existujú dve hodnoty, ako napríklad p a q. Premenná p má hodnotu 2 a premenná q má hodnotu 3. Tieto dve hodnoty sa odovzdajú swapovej metóde. Pri swapovej metóde sa hodnota 2 skopíruje do premennej x a hodnota 3 sa skopíruje do premennej y. Pomocou premennej temp sa hodnoty vymenia. Späť v hlavnom programe sa pri tlači p a q hodnoty nevymenia. Hodnota p je stále 2 a hodnota q je 3. Aj pri metóde výmeny sú hodnoty zamieňané, ale neodráža sa to v hlavnom programe.

Na rozdiel od odovzdávania hodnôt, ako je uvedené vyššie, je možné odovzdávať parametre odkazom. Referenčná premenná je odkaz na umiestnenie v pamäti. Nie je vytvorené žiadne nové miesto v pamäti. Zmeny metódy sa prejavili v hlavnom programe. V C # sú referenčné parametre odkazované pomocou kľúčového slova ref. Pozrite si nižšie uvedený program.

namespace application1 {

výpočet verejnej triedy {

public void swap (ref int x, ref int y) {

int temp;

teplota = x;

x = y;

y = teplota;

}

public static void main (String args) {

Výpočet cal = nový Výpočet ();

int p = 2;

int q = 3;

cal.swap (ref p, ref q);

Console. WriteLine (p);

Console. WriteLine (q);

Console. ReadLine ();

}

}

}

Podľa vyššie uvedeného programu má trieda Výpočet metódu swap. V hlavnom programe sa vytvorí objekt typu Výpočet. Sú to dve premenné, ako napríklad p a q. Premenná p má hodnotu 2 a premenná q má hodnotu 3. Namiesto odovzdávania hodnôt sa metóde odovzdáva odkaz na pamäťové miesta p a q. Tieto referenčné premenné sa odkazujú pomocou ref. Pri metóde výmeny namiesto zmeny hodnôt na nové miesto sa vykonajú zmeny skutočných parametrov. Pri tlači hodnôt p a q hlavného programu poskytne zamenené hodnoty. Teraz je hodnota p 3 a hodnota q 2.

Aká je podobnosť medzi out a ref v C #?

Obidve sú kľúčové slová používané na odkazovanie na parametre metódy

Aký je rozdiel medzi out a ref v C #?

Rozdielny článok v strede pred tabuľkou

out vs ref v C #

Out je kľúčové slovo v C #, ktoré sa používa na označenie výstupného parametra. Používa sa na prenos výsledkov z volanej metódy do volania metódy. Ref je kľúčové slovo v C #, ktoré sa používa na odkazovanie na referenčný parameter. Používa sa na prenos údajov z volacej metódy do volanej metódy a na vrátenie údajov z volanej metódy do volacej metódy.
Funkčnosť
Pri použití kľúčového slova out je možné údaje prenášať z volajúcej metódy do volanej metódy. Ale tieto údaje sú zahodené. Používa sa na odovzdanie výsledku volacej metóde z volanej metódy. Pri použití kľúčového slova ref sa údaje prenášajú z volacej metódy do volanej metódy a manipulované údaje sa odovzdávajú späť do volajúcej metódy.
Odovzdávanie údajov
Pri použití kľúčového slova von sa údaje odovzdávajú jedným spôsobom, ktorý je volanou metódou, do volajúcej metódy. Pri použití kľúčového slova ref sa údaje odovzdávajú dvoma spôsobmi, a to od volacej metódy k volanej metóde a od volanej metódy k volacej metóde.

Zhrnutie - out vs ref v C #

Pri vyvolaní metódy môže byť potrebné zadať hodnoty do metódy a získať späť výsledky metódy. C # má na to rôzne parametre. Hodnotové parametre sa používajú na prenos parametrov do metódy podľa hodnoty. Referenčné parametre sa používajú na prenos parametrov do metódy odkazom. Výstupné parametre sa používajú na odovzdanie výsledku späť z metódy. V C # sa kľúčové slovo out používa na výstupné parametre a kľúčové slovo ref sa používa na referenčné parametre. Rozdiel medzi out a ref v C # je ten, že out je kľúčové slovo používané na odkazovanie výstupného parametra, ktorý sa používa na prenos výsledkov z volanej metódy do volacej metódy, zatiaľ čo ref je kľúčové slovo na odkazovanie na referenčný parameter, ktorý sa používa na prenos údajov z metóda volania na metódu volania a na príjem údajov z metódy volania do metódy volania.

Stiahnite si PDF out vs ref v C #

Môžete si stiahnuť PDF verziu tohto článku a použiť ju na offline účely podľa citačnej poznámky. Stiahnite si verziu PDF tu: Rozdiel medzi Out a Ref v C #

Odporúčaná: