logo

Izhodni parameter s primeri v C#

The ven je ključna beseda v C#, ki se uporablja za posredovanje argumentov metodam kot referenčni tip. Običajno se uporablja, ko metoda vrne več vrednosti.

Pomembne točke:



  • Podobno je ključni besedi ref. Toda glavni razlika med ref in out ključna beseda je, da ref zahteva, da mora biti spremenljivka inicializirana, preden se posreduje metodi. Vendar parameter out ne zahteva inicializacije spremenljivk, preden se posreduje metodi. Toda preden vrne vrednost klicni metodi, mora biti spremenljivka inicializirana v klicani metodi.
  • Podobna je tudi ključni besedi in, vendar the v ključna beseda ne dovoljuje, da bi metoda, ki je klicala, spremenila vrednost argumenta, ampak ref dovoljuje.
  • Za uporabo ven ključno besedo kot parameter morata tako definicija metode kot klicna metoda uporabiti ven ključna beseda izrecno.
  • Izhodnih parametrov ni dovoljeno uporabljati v asinhronih metodah.
  • Izhodnih parametrov ni dovoljeno uporabljati v metodah iteratorja.
  • V metodi je lahko več kot en izhodni parameter.
  • V času klica metode se lahko izhodni parameter deklarira v vrstici. Toda do inline out parametrov je mogoče dostopati v istem bloku kode, kjer kliče.
  • Preobremenitev metode je mogoče izvesti tudi z uporabo zunanjih parametrov.
  • Lastnosti ni mogoče posredovati kot parametrov, ker niso spremenljivke.
  • Do C# 6.0 uporabnik najprej deklarira spremenljivko, nato jo lahko posreduje le kot izhodni argument. Od različice C# 7.0 pa lahko uporabnik, razen ločene deklaracije spremenljivke, deklarira tudi izhodno spremenljivko na seznamu argumentov klica metode.

Deklaracija zunanjega parametra:

// No need to initialize // the variable here data_type variable_name; Method_Name(out variable_name); // you can also convert both above two // lines of codes as follows from // C# 7.0 onwards Method_Name(out data_type variable_name);>

Tukaj je vrednost ime_spremenljivke mora biti inicializiran v klicani metodi, preden vrne vrednost.

primer:



C#






// C# program to illustrate the> // concept of out parameter> using> System;> class> GFG {> >// Main method> >static> public> void> Main()> >{> >// Declaring variable> >// without assigning value> >int> i;> >// Pass variable i to the method> >// using out keyword> >Addition(>out> i);> >// Display the value i> >Console.WriteLine(>'The addition of the value is: {0}'>, i);> >}> >// Method in which out parameter is passed> >// and this method returns the value of> >// the passed parameter> >public> static> void> Addition(>out> int> i)> >{> >i = 30;> >i += i;> >}> }>

>

>

Izhod:

The addition of the value is: 60>

Več izhodnih parametrov: V C# lahko uporabnik metodi posreduje več parametrov in metoda vrne več vrednosti.

primer: V spodnji kodi smo deklarirali dve spremenljivki vrednosti brez inicializacije, npr. int i, j;. Zdaj te parametre posredujemo metodi Addition z uporabo ključne besede out, kot je Addition(out i, out j);. Vrednost teh spremenljivk je dodeljena v metodi, v kateri so bile posredovane.

C#


bin v bcd



// C# program to illustrate the> // concept of multiple out parameter> using> System;> class> GFG {> >// Main method> >static> public> void> Main()> >{> >// Declaring variables> >// without assigning values> >int> i, j;> >// Pass multiple variable to> >// the method using out keyword> >Addition(>out> i,>out> j);> >// Display the value i and j> >Console.WriteLine(>'The addition of the value is: {0}'>, i);> >Console.WriteLine(>'The addition of the value is: {0}'>, j);> >}> >// Method in which out parameters> >// are passed and this method returns> >// the values of the passed parameters> >public> static> void> Addition(>out> int> p,>out> int> q)> >{> >p = 30;> >q = 40;> >p += p;> >q += q;> >}> }>

>

>

Izhod:

The addition of the value is: 60 The addition of the value is: 80>

Izboljšanje parametra Out v C# 7.0: V C# 7.0 je parametru out dodanih nekaj novih funkcij, ki so:

  • V C# 7.0 lahko izhodni parameter preide brez svoje deklaracije in inicializacije, kar se imenuje In-line deklaracija parametra Out ali implicitno Vnesite izhodni parameter . Njegov obseg je omejen na telo metode, tj. lokalni obseg.
  • Izhodni parameter je dovoljeno uporabljati je bil vnesite seznam parametrov metode.
  • Pri izhodnem parametru ni obvezno, da je ime izhodnega parametra enako v definiciji in klicu.
  • Lahko se uporablja tudi v poskusnem vzorcu.

primer: Spodnji programi prikazujejo vgrajeno deklaracijo parametra Out. Tukaj je vrstica kode, tj. Območje (out int length, out int width, out int Rarea); vsebuje vgrajeno deklaracijo parametra Out, saj so te spremenljivke deklarirane neposredno znotraj klica metode. Vrednost spremenljivk se inicializira v metodi, v kateri so bile posredovane.

Opomba: Za izvajanje tega primera potrebujete različico C# 7.0.

primer:

obravnavanje izjem v Javi

C#




// C# program to illustrate the> // concept of out parameter> using> System;> class> GFG> {> >// Main method> >static> public> void> Main()> >{> >// In-line declaring variables> >// without assigning values> >// Passing multiple variable to> >// the method using out keyword> >Area(>out> int> length,>out> int> width,>out> int> Rarea);> >// Display the value length, width, and Rarea> >System.Console.WriteLine(>'Length of the rectangle is: '>+ length);> >System.Console.WriteLine(>'Width of the rectangle is: '>+ width);> >System.Console.WriteLine(>'Area of the rectangle is: '>+ Rarea);> >Console.ReadLine();> >}> >// Method in which out parameters are passed> >// and this method returns the values of> >// the passed parameters> >public> static> void> Area(>out> int> p,>out> int> q,>out> int> Rarea)> >{> >p = 30;> >q = 40;> >Rarea = p * q;> >}> }>

>

>

Izhod:

Length of the rectangle is : 30 Width of the rectangle is : 40 Area of the rectangle is : 1200>