Bagikan melalui


out (Referensi C#)

out Gunakan kata kunci dalam dua konteks:

  • Sebagai pengubah parameter, yang Anda gunakan untuk meneruskan argumen ke metode dengan referensi daripada berdasarkan nilai.
  • Dalam deklarasi parameter jenis generik untuk antarmuka dan delegasi, yang Anda gunakan untuk menentukan bahwa parameter jenis kovarian.

Referensi bahasa C# mendokumentasikan versi bahasa C# yang paling baru dirilis. Ini juga berisi dokumentasi awal untuk fitur dalam pratinjau publik untuk rilis bahasa yang akan datang.

Dokumentasi mengidentifikasi fitur apa pun yang pertama kali diperkenalkan dalam tiga versi terakhir bahasa atau dalam pratinjau publik saat ini.

Petunjuk / Saran

Untuk menemukan kapan fitur pertama kali diperkenalkan di C#, lihat artikel tentang riwayat versi bahasa C#.

Pengubah out parameter sangat berguna ketika metode perlu mengembalikan lebih dari satu nilai karena Anda dapat menggunakan lebih dari satu out parameter. Contohnya,

    public void Main()
    {
        double radiusValue = 3.92781;
        //Calculate the circumference and area of a circle, returning the results to Main().
        CalculateCircumferenceAndArea(radiusValue, out double circumferenceResult, out var areaResult);
        System.Console.WriteLine($"Circumference of a circle with a radius of {radiusValue} is {circumferenceResult}.");
        System.Console.WriteLine($"Area of a circle with a radius of {radiusValue} is {areaResult}.");
        Console.ReadLine();
    }

    //The calculation worker method.
    public static void CalculateCircumferenceAndArea(double radius, out double circumference, out double area)
    {
        circumference = 2 * Math.PI * radius;
        area = Math.PI * (radius * radius);
    }

Batasan berikut berlaku untuk menggunakan out kata kunci:

  • Anda tidak dapat menggunakan out parameter dalam metode asinkron.
  • Anda tidak dapat menggunakan out parameter dalam metode iterator.
  • Anda tidak dapat meneruskan properti sebagai out parameter.