'keluar' ialah kata kunci dalam C#, yang digunakan untuk menghantar argumen kepada kaedah sebagai jenis rujukan. Pembolehubah dihantar ke kaedah kerana parameter keluar tidak perlu diisytiharkan atau dimulakan sebelum ia dihantar ke panggilan kaedah. Kaedah yang dipanggil diperlukan untuk memberikan nilai kepada pembolehubah parameter keluar sebelum kawalan meninggalkan kaedah yang dipanggil dan sebelum kaedah yang dipanggil mengembalikan sebarang nilai kepada kaedah panggilan. Adalah mungkin untuk menghantar berbilang parameter kepada kaedah dan kaedah itu mengembalikan berbilang nilai.
Sintaks dengan penjelasan:
Semasa memanggil kaedah menggunakan parameter keluar, sintaksnya adalah seperti berikut:
Method_name(out data_type variable_name);
Di sini, Method_name ialah mana-mana nama yang ditentukan pengguna yang diberikan kepada kaedah, 'out' ialah kata kunci yang digunakan untuk menyatakan bahawa pembolehubah yang dihantar kepada kaedah adalah parameter keluar, data_type boleh menjadi mana-mana jenis data pembolehubah dan variable_name ialah nama pembolehubah yang ditentukan pengguna.
Sintaks untuk kaedah yang akan dipanggil adalah seperti berikut:
access_specifier return_type Method_name(out data_type variable_name);
Di sini, access_specifier boleh menjadi mana-mana penentu akses antara lima penentu akses yang disokong oleh C# seperti awam atau peribadi. Kemudian, return_type ialah jenis data yang dipulangkan oleh kaedah ini diikuti dengan nama kaedah dan senarai parameter 'keluar'.
Dalam C#, kata kunci 'keluar' berfungsi serupa dengan kata kunci 'ref' dan 'in'. Perbezaan antara parameter 'keluar' dan 'ref' ialah, pembolehubah parameter 'keluar' tidak perlu dimulakan sebelum ia dihantar ke kaedah, pengguna boleh mengisytiharkan pembolehubah parameter 'keluar' dalam senarai argumen kaedah bukannya mengisytiharkannya secara berasingan yang dipanggil pengisytiharan sebaris bagi parameter 'keluar' manakala pembolehubah parameter 'ref' perlu dimulakan sebelum ia dihantar ke kaedah. Parameter 'keluar' yang diisytiharkan sebaris boleh diakses dalam blok kod yang sama.
Kod:
using System; namespace ConsoleApp4 { public class Program { public static void Main(string[] args) { //inline declaration of 'out' parameter Display(out int num); Console.WriteLine("Value of variable 'num': {0}", num); Console.ReadLine(); } public static void Display(out int a) { //need to assign value a = 10; a += a; } } }
Output:
Kod:
using System; namespace ConsoleApp4 { public class Program { public static void Main(string[] args) { string str = "123456"; int num; //if ‘canParse’ is true; the result of conversion will be stored in ‘num’ bool canParse = Int32.TryParse(str, out num); if (canParse) Console.WriteLine(num); else Console.WriteLine("Could not be parsed."); Console.ReadLine(); } } }
Output:
Diberikan di bawah adalah contoh Parameter C# Out:
Contoh menunjukkan berbilang parameter 'keluar' yang dihantar kepada kaedah dan kemudian kaedah itu mengembalikan berbilang nilai.
Kod:
using System; namespace ConsoleApp4 { public class Program { public static void Main() { //declaring variables without assigning values float area, perimeter; //passing multiple variables to a method using 'out' keyword Calculate(5, 10, out area, out perimeter); //displaying the result Console.WriteLine("The area of rectangle is: {0}", area); Console.WriteLine("The perimeter of rectangle is: {0}", perimeter); Console.ReadLine(); } //method taking length & breadth & it will return area and perimeter of rectangle public static void Calculate(int length, int breadth, out float area, out float perimeter) { area = length * breadth; perimeter = 2 * (length + breadth); } } }
Output:
Contoh yang menunjukkan pengisytiharan sebaris bagi parameter 'keluar'.
Kod:
using System; namespace ConsoleApp4 { public class Program { public static void Main() { //in-line declaration of variables without assigning values Calculate(out int length, out int breadth, out float area); //displaying the values of length, breadth, and area Console.WriteLine("Length of rectangle: " + length); Console.WriteLine("Breadth of rectangle: " + breadth); Console.WriteLine("Area of rectangle: " + area); Console.ReadLine(); } //method taking 'out' parameters and it returns multiple values public static void Calculate(out int l, out int b, out float a) { l = 30; b = 40; a = l * b; } } }
Output:
Parameter 'keluar' dalam C# membolehkan pengguna menghantar hujah dengan merujuk kepada kaedah. Pembolehubah yang digunakan sebagai parameter 'keluar' tidak perlu dimulakan sebelum ia dihantar kepada kaedah. Kaedah yang dipanggil harus memberikan nilai kepada parameter keluar sebelum ia mengembalikan nilai.
Atas ialah kandungan terperinci Parameter Keluar C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!