Perbezaan antara keluar dan ref di C#

Perbezaan antara keluar dan ref di C#

Perbezaan utama - keluar vs ref di c#
 

C# adalah bahasa pengaturcaraan moden yang dibangunkan oleh Microsoft. Ia digunakan untuk membangunkan pelbagai aplikasi untuk desktop, web dan mudah alih. Fungsi atau kaedah adalah konsep dalam pengaturcaraan. Kumpulan pernyataan yang digunakan untuk melaksanakan tugas tertentu dikenali sebagai fungsi atau kaedah.  Dalam program C#, pelaksanaan bermula dari Main (). Ia adalah contoh kaedah. Semasa memanggil kaedah, data diserahkan kepada kaedah atau diterima dari kaedah. Kaedah yang memanggil kaedah baru dikenali sebagai Memanggil kaedah. Kaedah baru dikenali sebagai kaedah yang dipanggil. Untuk menguruskan nilai lulus dan mendapatkan kembali hasilnya, C# menggunakan parameter. Mereka adalah parameter bernilai, parameter output dan parameter rujukan. Parameter nilai digunakan untuk lulus parameter ke dalam kaedah mengikut nilai. Parameter rujukan digunakan untuk lulus parameter ke kaedah dengan rujukan. Parameter output digunakan untuk lulus hasilnya kembali dari kaedah. Dalam C#, kata kunci keluar digunakan untuk parameter output dan kata kunci ref digunakan untuk parameter rujukan. The Perbezaan utama antara keluar dan ref di c# adalah itu, Keluar adalah kata kunci yang digunakan untuk merujuk parameter output yang digunakan untuk lulus hasil dari kaedah yang dipanggil untuk memanggil kaedah sementara ref adalah kata kunci untuk merujuk parameter rujukan yang digunakan untuk lulus data dari kaedah panggilan untuk dipanggil kaedah dan menerima data dari kaedah yang dipanggil untuk memanggil kaedah.

Kandungan

1. Gambaran Keseluruhan dan Perbezaan Utama
2. Apa yang ada di C#
3. Apa itu ref di C#
4. Persamaan antara keluar dan ref di C#
5. Perbandingan sampingan - keluar vs ref dalam c# dalam bentuk jadual
6. Ringkasan

Apa yang ada di C#?

Sintaks untuk fungsi atau kaedah adalah seperti berikut. Kaedah mempunyai beberapa elemen seperti nama kaedah, senarai parameter, jenis pulangan dan penentu akses.

(Senarai Parameter)

// Pernyataan untuk melaksanakan

Setiap kaedah mempunyai kaedah yang unik untuk membuat panggilan fungsi. Kenyataan yang boleh dilaksanakan berada di dalam pendakap keriting. Jenis pulangan menerangkan sama ada fungsi itu mengembalikan nilai atau tidak. Apabila tidak ada jenis kembali, ia dipanggil tidak sah. Penentukan Akses digunakan untuk menentukan kebolehaksesan kaedah dalam aplikasi. Parameter digunakan untuk menerima atau menyampaikan data ke kaedah. Terdapat juga kaedah tanpa parameter. Parameter boleh dinilai parameter, parameter output atau parameter rujukan.

Parameter output digunakan untuk lulus hasil kembali ke kaedah panggilan. Untuk itu, parameter harus diisytiharkan dengan kata kunci keluar. Parameter output tidak membuat lokasi storan baru. Umumnya, kaedah mengembalikan satu nilai. Tetapi di C#, adalah mungkin untuk mengembalikan dua nilai dari fungsi menggunakan parameter output. Rujuk program di bawah.

aplikasi ruang nama1

            Pengiraan Kelas Awam

paparan void awam (keluar int a, keluar int b)

int nilai = 5;

a = nilai;

b = nilai;

A = A* A;

b = b*b;

public static void main (string [] args)

int value1 = 10, value2 = 20;

Pengiraan cal = pengiraan baru ();

Cal.paparan (out value1, out value2);

Konsol.Readline ();

Fungsi paparan dipanggil dari kaedah utama. Nilai1 dan nilai dua mempunyai 10 dan 20, tetapi mereka tidak dimasukkan ke dalam kaedah. Nilai A ialah 25 dan nilai B juga 25 dalam fungsi. Oleh itu, nilai -nilai tersebut dikembalikan. Semasa mencetak nilai1 dan nilai2, ia tidak akan memberi 10 dan 20. Sebaliknya, ia akan mencetak 25 dan 25. Menggunakan kata kunci keluar kata kunci boleh dikembalikan dari kaedah.

Apa itu ref di C#?

Semasa melewati parameter dengan nilai, lokasi storan baru dibuat untuk setiap parameter. Parameter sebenar yang dihantar dari program utama tidak berubah. Sebaliknya, nilai -nilai tersebut disalin ke lokasi yang berasingan. Salinan pembolehubah baru itu dipanggil parameter rasmi. Rujuk kod di bawah.

aplikasi ruang nama1

Pengiraan Kelas Awam

swap void awam (int x, int y)

int temp;

temp = x;

x = y;

y = temp;

public static void main (string [] args)

Pengiraan cal = pengiraan baru ();

int p = 2;

int Q = 3;

Cal.swap (p, q);

Konsol.Writeline (P);

Konsol.Writeline (Q);

Konsol.Readline ();

Menurut program di atas, kelas pengiraan mempunyai swap kaedah (). Dalam program utama, objek pengiraan jenis dibuat. Terdapat dua nilai seperti p dan q. Pembolehubah P mempunyai nilai 2 dan q pembolehubah mempunyai nilai 3.  Kedua -dua nilai tersebut diserahkan kepada kaedah swap. Dalam kaedah swap, nilai 2 disalin ke dalam pembolehubah x dan nilai 3 disalin ke pembolehubah y. Menggunakan pemboleh ubah temp, nilai ditukar. Kembali dalam program utama, semasa mencetak p dan q, nilai -nilai tidak ditukar. Nilai p masih 2 dan nilai q ialah 3. Walaupun dalam kaedah swap, nilai ditukar tetapi tidak mencerminkan dalam program utama.

Tidak seperti nilai lulus seperti di atas, adalah mungkin untuk lulus parameter dengan rujukan. Pemboleh ubah rujukan adalah rujukan ke lokasi memori. Tidak ada lokasi memori baru yang dibuat. Perubahan dalam kaedah yang ditunjukkan dalam program utama.  Di C#, parameter rujukan dirujuk menggunakan kata kunci ref. Rujuk program di bawah.

aplikasi ruang nama1

Pengiraan Kelas Awam

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

int temp;

temp = x;

x = y;

y = temp;

public static void main (string [] args)

Pengiraan cal = pengiraan baru ();

int p = 2;

int Q = 3;

Cal.swap (ref p, ref q);

Konsol.Writeline (P);

Konsol.Writeline (Q);

Konsol.Readline ();

Menurut program di atas, pengiraan kelas mempunyai kaedah swap. Dalam program utama, objek pengiraan jenis dibuat. Ini adalah dua pembolehubah seperti p dan q. Pemboleh ubah p mempunyai pemboleh ubah nilai 2 dan q mempunyai nilai 3. Daripada nilai lulus, rujukan ke lokasi memori P dan Q diserahkan kepada kaedah. Pembolehubah rujukan tersebut dirujuk menggunakan ref. Dalam kaedah swap, bukannya mengatasi nilai ke lokasi baru, perubahan dibuat kepada parameter sebenar. Apabila mencetak nilai P dan Q dari program utama, ia akan memberikan nilai swap. Sekarang nilai p ialah 3 dan nilai q ialah 2.

Apakah persamaan antara keluar dan ref di C#?

  • Kedua -duanya adalah kata kunci yang digunakan untuk merujuk parameter kaedah.

Apakah perbezaan antara keluar dan ref di C#?

keluar vs ref di c#

Keluar adalah kata kunci dalam C# yang digunakan untuk merujuk parameter output. Ia digunakan untuk lulus hasil dari kaedah yang dipanggil untuk memanggil kaedah. Ref adalah kata kunci dalam C# yang digunakan untuk merujuk parameter rujukan. Ia digunakan untuk lulus data dari kaedah panggilan untuk dipanggil kaedah dan mengembalikan data dari kaedah yang dipanggil untuk memanggil kaedah.
Fungsi
Apabila menggunakan kata kunci, data boleh diluluskan dari kaedah panggilan ke kaedah yang dipanggil. Tetapi data itu dibuang. Ia digunakan untuk lulus hasilnya kepada kaedah panggilan dari kaedah yang dipanggil. Apabila menggunakan kata kunci ref, data diluluskan dari kaedah panggilan ke kaedah yang dipanggil dan data yang dimanipulasi akan diluluskan kembali ke kaedah panggilan.
Lulus data
Apabila menggunakan kata kunci, data diluluskan dalam satu cara yang merupakan kaedah yang dipanggil untuk kaedah panggilan. Apabila menggunakan kata kunci ref, data diluluskan dalam dua cara, dari kaedah panggilan ke kaedah yang dipanggil dan dari kaedah yang dipanggil ke kaedah panggilan.

Ringkasan -keluar vs ref di c# 

Apabila menggunakan kaedah, mungkin perlu lulus nilai -nilai ke dalam kaedah dan untuk mengembalikan hasil dari kaedah.  C# mempunyai parameter yang berbeza untuk mencapai itu. Parameter nilai digunakan untuk lulus parameter ke dalam kaedah mengikut nilai. Parameter rujukan digunakan untuk lulus parameter ke kaedah dengan rujukan. Parameter output digunakan untuk lulus hasilnya kembali dari kaedah. Dalam C#, kata kunci keluar digunakan untuk parameter output dan kata kunci ref digunakan untuk parameter rujukan. Perbezaan antara keluar dan ref di C# ialah, keluar adalah kata kunci yang digunakan untuk merujuk parameter output yang digunakan untuk lulus hasil dari kaedah yang dipanggil untuk memanggil kaedah sementara ref adalah kata kunci untuk merujuk parameter rujukan yang digunakan untuk lulus data dari kaedah panggilan untuk dipanggil kaedah dan menerima data dari kaedah yang dipanggil untuk memanggil kaedah.

Muat turun PDF Out Vs Ref di C#

Anda boleh memuat turun versi PDF artikel ini dan menggunakannya untuk tujuan luar talian mengikut nota petikan. Sila muat turun versi PDF di sini: Perbezaan Antara Keluar dan Ref di C#

Rujukan:

1.TutorialSpoint.com. "Kaedah C#." Tujuan itu. Terdapat di sini 
2.dnfvideo. C# Out Parameter vs Parameter Ref, .Video penyediaan wawancara bersih, 28 Sept. 2015. Terdapat di sini  

Ihsan gambar:

1.'C Sharp'by Mothmolevna - Kerja Sendiri, (Domain Awam) melalui Commons Wikimedia