Perbedaan antara Out dan Ref di C#

Perbedaan antara Out dan Ref di C#

Perbedaan Kunci - Keluar vs ref di C#
 

C# adalah bahasa pemrograman modern yang dikembangkan oleh Microsoft. Ini digunakan untuk mengembangkan berbagai aplikasi untuk desktop, web, dan seluler. Fungsi atau metode adalah konsep dalam pemrograman. Kelompok pernyataan yang digunakan untuk melakukan tugas tertentu dikenal sebagai fungsi atau metode.  Dalam program C#, eksekusi dimulai dari main (). Ini adalah contoh dari suatu metode. Saat memanggil metode, data diteruskan ke metode atau diterima dari metode. Metode yang menyebut metode baru ini dikenal sebagai memanggil metode. Metode baru dikenal sebagai disebut metode. Untuk mengelola nilai yang lewat dan mendapatkan kembali hasilnya, C# menggunakan parameter. Mereka adalah parameter yang dihargai, parameter output dan parameter referensi. Parameter nilai digunakan untuk meneruskan parameter ke dalam metode dengan nilai. Parameter referensi digunakan untuk meneruskan parameter ke metode dengan referensi. Parameter output digunakan untuk meneruskan hasilnya dari metode. Dalam C#, kata kunci out digunakan untuk parameter output dan kata kunci ref digunakan untuk parameter referensi. Itu perbedaan utama Antara Out dan Ref di C# adalah itu, Out adalah kata kunci yang digunakan untuk merujuk parameter output yang digunakan untuk memberikan hasil dari metode yang dipanggil ke metode panggilan sementara REF adalah kata kunci untuk merujuk parameter referensi yang digunakan untuk meneruskan data dari metode panggilan ke metode yang dipanggil dan untuk menerima data Dari metode yang dipanggil ke metode panggilan.

ISI

1. Ikhtisar dan Perbedaan Utama
2. Apa yang keluar di C#
3. Apa itu Ref di C#
4. Kesamaan antara Out dan Ref di C#
5. Perbandingan berdampingan - Out vs Ref dalam C# dalam bentuk tabel
6. Ringkasan

Apa yang keluar di C#?

Sintaks untuk fungsi atau metode adalah sebagai berikut. Metode memiliki sejumlah elemen seperti nama metode, daftar parameter, jenis pengembalian dan spesifikasi akses.

(Daftar Parameter)

// Pernyataan untuk mengeksekusi

Setiap metode memiliki metode unik untuk melakukan panggilan fungsi. Pernyataan yang dapat dieksekusi berada di dalam kawat gigi keriting. Jenis pengembalian menjelaskan apakah fungsi mengembalikan nilai atau tidak. Ketika tidak ada tipe pengembalian, itu disebut void. Access Specifier digunakan untuk menentukan metode aksesibilitas dalam aplikasi. Parameter digunakan untuk menerima atau meneruskan data ke metode ini. Mungkin juga ada metode tanpa parameter. Parameter dapat dinilai parameter, parameter output atau parameter referensi.

Parameter output digunakan untuk meneruskan hasil kembali ke metode panggilan. Untuk itu, parameter harus dinyatakan dengan kata kunci keluar. Parameter output tidak membuat lokasi penyimpanan baru. Secara umum, suatu metode mengembalikan satu nilai. Tetapi dalam C#, dimungkinkan untuk mengembalikan dua nilai dari fungsi menggunakan parameter output. Rujuk program di bawah ini.

namespace application1

            Perhitungan kelas publik

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

nilai int = 5;

a = nilai;

B = nilai;

a = a* a;

b = b*b;

public static void main (string [] args)

value int1 = 10, value2 = 20;

Perhitungan Cal = Perhitungan Baru ();

Cal.tampilan (out value1, out value2);

Menghibur.Readline ();

Fungsi tampilan dipanggil dari metode utama. Nilai1 dan nilai dua memiliki 10 dan 20, tetapi mereka tidak dimasukkan ke dalam metode. Nilai A adalah 25 dan nilai B juga 25 dalam fungsi. Oleh karena itu, nilai -nilai itu dikembalikan. Saat mencetak value1 dan value2, itu tidak akan memberikan 10 dan 20. Sebaliknya, itu akan mencetak 25 dan 25. Menggunakan Nilai Kata Kunci Out dapat dikembalikan dari metode ini.

Apa itu Ref di C#?

Saat melewati parameter berdasarkan nilai, lokasi penyimpanan baru dibuat untuk setiap parameter. Parameter aktual yang dikirim dari program utama tidak berubah. Sebaliknya, nilai -nilai tersebut disalin ke lokasi yang terpisah. Salinan variabel baru itu disebut parameter formal. Rujuk kode di bawah ini.

namespace application1

Perhitungan kelas publik

public void swap (int x, int y)

int temp;

temp = x;

x = y;

y = temp;

public static void main (string [] args)

Perhitungan Cal = Perhitungan Baru ();

int p = 2;

int q = 3;

Cal.swap (p, q);

Menghibur.WriteLine (P);

Menghibur.WriteLine (Q);

Menghibur.Readline ();

Menurut program di atas, kelas perhitungan memiliki metode swap (). Dalam program utama, objek perhitungan tipe dibuat. Ada dua nilai seperti p dan q. Variabel P memiliki nilai 2 dan q variabel memiliki nilai 3.  Kedua nilai tersebut diteruskan ke metode swap. Dalam metode swap, nilai 2 disalin ke variabel x dan nilai 3 disalin ke variabel y. Menggunakan variabel temp, nilainya ditukar. Kembali ke program utama, saat mencetak P dan Q, nilainya tidak ditukar. Nilai P masih 2 dan nilai Q adalah 3. Bahkan dalam metode swap, nilai ditukar tetapi tidak mencerminkan dalam program utama.

Tidak seperti nilai melewati seperti di atas, dimungkinkan untuk melewati parameter dengan referensi. Variabel referensi adalah referensi ke lokasi memori. Tidak ada lokasi memori baru yang dibuat. Perubahan dalam metode yang tercermin dalam program utama.  Di C#, parameter referensi dirujuk menggunakan kata kunci ref. Rujuk program di bawah ini.

namespace application1

Perhitungan kelas publik

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

int temp;

temp = x;

x = y;

y = temp;

public static void main (string [] args)

Perhitungan Cal = Perhitungan Baru ();

int p = 2;

int q = 3;

Cal.SWAP (Ref P, Ref Q);

Menghibur.WriteLine (P);

Menghibur.WriteLine (Q);

Menghibur.Readline ();

Menurut program di atas, perhitungan kelas memiliki metode swap. Dalam program utama, objek perhitungan tipe dibuat. Adalah dua variabel seperti p dan q. Variabel P memiliki variabel nilai 2 dan q memiliki nilai 3. Daripada memberikan nilai, referensi ke lokasi memori p dan q diteruskan ke metode. Variabel referensi tersebut dirujuk menggunakan REF. Dalam metode swap, daripada mengatasi nilai ke lokasi baru, perubahan dilakukan pada parameter aktual. Saat mencetak nilai P dan Q dari program utama, itu akan memberikan nilai yang ditukar. Sekarang nilai p adalah nilai 3 dan q adalah 2.

Apa kesamaan antara out dan ref in c#?

  • Keduanya adalah kata kunci yang digunakan untuk merujuk parameter metode.

Apa perbedaan antara Out dan Ref di C#?

keluar vs ref di c#

Keluar adalah kata kunci dalam C# yang digunakan untuk merujuk parameter output. Itu digunakan untuk melewati hasil dari metode yang dipanggil untuk memanggil metode. Ref adalah kata kunci dalam C# yang digunakan untuk merujuk parameter referensi. Ini digunakan untuk meneruskan data dari metode panggilan ke metode yang dipanggil dan untuk mengembalikan data dari metode yang dipanggil ke metode panggilan.
Kegunaan
Saat menggunakan kata kunci, data dapat diteruskan dari metode panggilan ke metode yang dipanggil. Tapi data itu dibuang. Itu digunakan untuk meneruskan hasilnya ke metode panggilan dari metode yang dipanggil. Saat menggunakan kata kunci REF, data diteruskan dari metode panggilan ke metode yang dipanggil dan data yang dimanipulasi diteruskan kembali ke metode panggilan.
Meloloskan data
Saat menggunakan kata kunci, data dilewatkan dengan satu cara yang merupakan metode yang dipanggil untuk metode panggilan. Saat menggunakan kata kunci ref, data dilewatkan dengan dua cara, dari metode panggilan ke metode yang dipanggil dan dari metode yang dipanggil ke metode panggilan.

Ringkasan -Keluar vs ref di C# 

Saat memohon suatu metode, mungkin perlu untuk meneruskan nilai ke dalam metode dan untuk mendapatkan kembali hasil dari metode tersebut.  C# memiliki parameter yang berbeda untuk mencapainya. Parameter nilai digunakan untuk meneruskan parameter ke dalam metode dengan nilai. Parameter referensi digunakan untuk meneruskan parameter ke metode dengan referensi. Parameter output digunakan untuk meneruskan hasilnya dari metode. Dalam C#, kata kunci out digunakan untuk parameter output dan kata kunci ref digunakan untuk parameter referensi. Perbedaan antara Out dan Ref dalam C# adalah bahwa, keluar adalah kata kunci yang digunakan untuk merujuk parameter output yang digunakan untuk melewati hasil dari metode yang dipanggil ke metode panggilan sementara REF adalah kata kunci untuk merujuk parameter referensi yang digunakan untuk meneruskan data dari Metode Panggilan untuk Metode yang Dipanggil dan Untuk Menerima Data Dari Metode yang Dipanggil untuk Metode Panggilan.

Unduh PDF Out Vs Ref di C#

Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi PDF di sini: Perbedaan Antara dan Ref di C#

Referensi:

1.TutorialSpoint.com. “Metode C#." Inti nya. Tersedia disini 
2.dnfvideo. Parameter C# out vs Parameter REF, .Video persiapan wawancara bersih, 28 September. 2015. Tersedia disini  

Gambar milik:

1.'C Sharp'by Mothmolevna - karya sendiri, (domain publik) via commons wikimedia