Skirtumas Tarp „out“ir „ref“C

Turinys:

Skirtumas Tarp „out“ir „ref“C
Skirtumas Tarp „out“ir „ref“C

Video: Skirtumas Tarp „out“ir „ref“C

Video: Skirtumas Tarp „out“ir „ref“C
Video: Готовимся к Хэллоуину! Фриволите иглой. Летучая мышь/Getting ready for Halloween! Needle tatted bat 2024, Balandis
Anonim

Pagrindinis skirtumas - C ir #

C # yra moderni „Microsoft“sukurta programavimo kalba. Jis naudojamas įvairioms darbalaukio, interneto ir mobiliojo ryšio programoms kurti. Funkcijos ar metodai yra programavimo sąvoka. Ta teiginių grupė, kuri naudojama konkrečiai užduočiai atlikti, yra žinoma kaip funkcija arba metodas. C # programose vykdymas prasideda nuo main (). Tai metodo pavyzdys. Kviečiant metodą, duomenys perduodami metodui arba gaunami iš metodo. Naujo metodo iškvietimas yra vadinamas metodo iškvietimu. Naujasis metodas yra žinomas kaip vadinamas metodas. Norėdami valdyti praeinančias vertes ir gauti rezultatą, C # naudoja parametrus. Jie yra vertinami parametrai, išvesties parametrai ir pamatiniai parametrai. Vertės parametrai naudojami parametrams perduoti į metodą pagal vertę. Pamatiniai parametrai naudojami parametrams perduoti metodui remiantis nuoroda. Išvesties parametrai naudojami rezultatui grąžinti iš metodo. C #, išvesties parametrams naudojamas „out“raktas, o parametrams remtis - „ref keyword“. Pagrindinis skirtumas tarp „out“ir „ref“C # yra tas, kad „out“yra raktinis žodis, naudojamas nukreipti išvesties parametrą, kuris naudojamas perduodant iškviečiamo metodo rezultatus skambinimo metodui, o „ref“yra raktinis žodis, nurodantis referencinį parametrą, kuris naudojamas perduoti duomenys iš skambinimo metodo į iškviestą metodą ir gauti duomenis iš iškvietimo metodo į skambinimo metodą.out yra raktinis žodis, naudojamas norint nurodyti išvesties parametrą, kuris naudojamas perduodant iškviesto metodo rezultatus skambinimo metodui, o ref yra raktinis žodis, nurodantis nuorodos parametrą, kuris naudojamas perduoti duomenis iš iškvietimo metodo į iškviestą metodą ir gauti duomenis nuo iškviesto metodo iki iškvietimo metodo.out yra raktinis žodis, naudojamas norint nurodyti išvesties parametrą, kuris naudojamas perduodant iškviečiamo metodo rezultatus skambinimo metodui, o ref yra raktinis žodis, nurodantis nuorodos parametrą, kuris naudojamas perduoti duomenis iš iškvietimo metodo į iškviestą metodą ir gauti duomenis nuo iškviesto metodo iki iškvietimo metodo.

TURINYS

1. Apžvalga ir pagrindinis skirtumas

2. Kas yra C #

3. Kas yra ref C #

4. Panašumai tarp „out“ir „C“Nr.

5. Nuorodų palyginimas - palyginimas iš C ir C # lentelių pavidalu

. Santrauka

Kas yra C #?

Funkcijos ar metodo sintaksė yra tokia. Metode yra daugybė elementų, tokių kaip metodo pavadinimas, parametrų sąrašas, grąžinimo tipas ir prieigos specifikatorius.

(parametrų sąrašas)

{// sakinius vykdyti

}

Kiekvienas metodas turi unikalų būdą, kaip paskambinti funkcijai. Vykdomieji teiginiai yra garbanotųjų petnešų viduje. Grąžinimo tipas paaiškina, ar funkcija grąžina vertę, ar ne. Kai nėra grąžinimo tipo, jis vadinamas negaliojančiu. Prieigos specifikatorius naudojamas metodo pritaikymui pritaikyti programoje. Parametrai naudojami duomenims gauti arba perduoti į metodą. Taip pat gali būti metodų be parametrų. Parametrai gali būti vertinami parametrai, išvesties parametrai arba atskaitos parametrai.

Skirtumas tarp „out“ir „ref“C #
Skirtumas tarp „out“ir „ref“C #

Išvesties parametrai naudojami rezultatams grąžinti į iškvietimo metodą. Tam parametras turėtų būti deklaruojamas be raktinio žodžio. Išvesties parametras nesukuria naujos saugyklos vietos. Paprastai metodas pateikia vieną vertę. Tačiau naudojant C #, galima grąžinti dvi reikšmes iš funkcijos naudojant išvesties parametrus. Peržiūrėkite žemiau pateiktą programą.

vardų srities programa1 {

viešosios klasės skaičiavimas {

viešas niekinis rodymas (out int a, out int b) {

int vertė = 5;

a = reikšmė;

b = vertė;

a = a * a;

b = b * b;

}

public static void main (String args) {

int vertė1 = 10, vertė2 = 20;

Skaičiavimas cal = naujas skaičiavimas ();

cal.display (iš reikšmės1, iš vertės2);

Pultas. ReadLine ();

}

}

}

Ekrano funkcija iškviečiama iš pagrindinio metodo. Reikšmė1 ir dvi reikšmės turi 10 ir 20, tačiau jos nėra įtrauktos į metodą. Funkcijos a reikšmė yra 25, o b reikšmė taip pat yra 25. Todėl šios vertės grąžinamos. Spausdinant reikšmę1 ir reikšmę2, ji neduos 10 ir 20. Vietoj to, ji atspausdins 25 ir 25. Naudojant „out“raktinį žodį iš metodo gali būti pateikiamos kelios vertės.

Kas yra ref C #?

Perduodant parametrus pagal vertę, kiekvienam parametrui sukuriama nauja saugojimo vieta. Faktiniai parametrai, išsiųsti iš pagrindinės programos, nesikeičia. Vietoj to, šios vertės nukopijuojamos į atskirą vietą. Tos naujos kintamosios kopijos vadinamos formaliais parametrais. Žr. Žemiau pateiktą kodą.

vardų srities programa1 {

viešosios klasės skaičiavimas {

public void swap (int x, int y) {

int temp;

temp = x;

x = y;

y = temp;

}

public static void main (String args) {

Skaičiavimas cal = naujas skaičiavimas ();

int p = 2;

int q = 3;

cal.sikeitimas (p, q);

Console. WriteLine (p);

Console. WriteLine (q);

Pultas. ReadLine ();

}

}

}

Pagal pirmiau pateiktą programą skaičiavimo klasėje yra metodo apsikeitimo sandoris (). Pagrindinėje programoje yra sukurtas skaičiavimo tipo objektas. Yra dvi reikšmės, tokios kaip p ir q. Kintamasis p turi 2 vertę, o q kintamasis turi vertę 3. Šios dvi reikšmės perduodamos apsikeitimo metodui. Taikant apsikeitimo metodą, reikšmė 2 nukopijuojama į kintamąjį x, o vertė 3 - į kintamąjį y. Naudojant temp kintamąjį, vertės keičiamos. Grįžus į pagrindinę programą, kai spausdinami p ir q, reikšmės nekeičiamos. P reikšmė vis tiek yra 2, o q reikšmė yra 3. Net taikant apsikeitimo metodą, vertės yra keičiamos, bet neatsispindi pagrindinėje programoje.

Skirtingai nuo aukščiau pateiktų verčių, parametrus galima perduoti remiantis nuoroda. Standartinis kintamasis yra nuoroda į atminties vietą. Nėra sukurta nauja atminties vieta. Metodo pakeitimai atsispindi pagrindinėje programoje. C #, nuorodos parametrai nurodomi naudojant ref raktinį žodį. Peržiūrėkite žemiau pateiktą programą.

vardų srities programa1 {

viešosios klasės skaičiavimas {

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

int temp;

temp = x;

x = y;

y = temp;

}

public static void main (String args) {

Skaičiavimas cal = naujas skaičiavimas ();

int p = 2;

int q = 3;

cal.sikeitimas (ref p, ref q);

Console. WriteLine (p);

Console. WriteLine (q);

Pultas. ReadLine ();

}

}

}

Pagal pirmiau pateiktą programą, skaičiavimo klasė turi apsikeitimo metodą. Pagrindinėje programoje yra sukurtas skaičiavimo tipo objektas. Tai yra du kintamieji, tokie kaip p ir q. P kintamojo reikšmė yra 2, o q kintamojo vertė 3. Užuot perdavus reikšmes, metodui pateikiama nuoroda į p ir q atminties vietas. Tie pamatiniai kintamieji nurodomi naudojant nuorodą. Taikant apsikeitimo metodą, užuot nukopijavus reikšmes į naują vietą, keičiami tikrieji parametrai. Spausdinant pagrindinės programos p ir q reikšmes, bus pateiktos sukeistos vertės. Dabar p reikšmė yra 3, o q vertė yra 2.

Koks yra „C“ir „ref“panašumas?

Abu šie raktiniai žodžiai naudojami metodo parametrams nurodyti

Koks skirtumas tarp „out“ir „ref“C #?

Skirtingas straipsnis viduryje prieš lentelę

out vs ref C #

Out yra raktinis žodis C #, kuris naudojamas išvesties parametrui nurodyti. Jis naudojamas norint perduoti iškviesto metodo rezultatus į metodo iškvietimą. Nuoroda yra C # raktinis žodis, naudojamas nuorodos parametrui nurodyti. Jis naudojamas perduoti duomenis iš iškvietimo metodo į iškviestą metodą ir grąžinti duomenis iš iškviesto metodo į iškvietimo metodą.
Funkcionalumas
Naudojant raktinį žodį out, duomenys gali būti perduodami iš iškvietimo metodo į iškviestą metodą. Bet šie duomenys atmetami. Jis naudojamas perduoti rezultatą iškvietimo metodui iš vadinamojo metodo. Naudojant raktinį žodį ref, duomenys iš skambinimo metodo perduodami į iškviestąjį metodą, o manipuliuojami duomenys perduodami atgal į iškvietimo metodą.
Duomenų perdavimas
Naudojant raktinį žodį, duomenys perduodami vienu būdu, vadinamu iškvietimo metodu. Naudojant raktinį žodį ref, duomenys perduodami dviem būdais: nuo iškvietimo metodo iki iškviečiamo metodo ir nuo iškviečiamo metodo iki iškvietimo metodo.

Santrauka - out vs ref C #

Kreipiantis į metodą gali tekti perduoti reikšmes į metodą ir susigrąžinti metodo rezultatus. C # turi skirtingus parametrus tam pasiekti. Vertės parametrai naudojami parametrams perduoti į metodą pagal vertę. Pamatiniai parametrai naudojami parametrams perduoti metodui remiantis nuoroda. Išvesties parametrai naudojami rezultatui grąžinti iš metodo. C #, išvesties parametrams naudojamas „out“raktas, o parametrams remtis - „ref keyword“. Skirtumas tarp „out“ir „ref“C # yra tas, kad „out“yra raktinis žodis, naudojamas norint nurodyti išvesties parametrą, kuris naudojamas perduoti rezultatus iš iškviesto metodo į iškvietimo metodą, o „ref“yra raktinis žodis, nurodantis nuorodos parametrą, kuris naudojamas perduoti duomenis iš iškvietimo metodas į iškviestą metodą ir gauti duomenis iš iškviesto metodo į iškvietimo metodą.

Atsisiųskite PDF ir „out vs ref“C #

Galite atsisiųsti šio straipsnio PDF versiją ir naudoti ją neprisijungus, kaip nurodyta citatos pastaboje. Atsisiųskite PDF versiją čia: Skirtumas tarp „Out“ir „Ref“C #

Rekomenduojama: