Perwakilan terbina dalam tergolong dalam jenis generik yang ditakrifkan di bawah ruang nama Sistem. Anda boleh menggunakannya dalam kaedah yang tidak mempunyai sebarang nilai pulangan, yang bermaksud ia dipanggil perwakilan tindakan. Perwakilan tindakan boleh mengandungi sekurang-kurangnya satu parameter input dan maksimum enam belas parameter input, dan parameter ini boleh mempunyai jenis data yang sama atau jenis data yang berbeza. Menggunakan perwakilan tindakan dalam program anda menjadikannya lebih dioptimumkan dan boleh dibaca. Dalam topik ini, kita akan belajar tentang C# Action Delegate.
Sintaks untuk Perwakilan Tindakan dalam C# adalah seperti berikut:
public delegate void Action < in input_parameter_type > (input_parameter_type object); public delegate void Action < in input_parameter_type1, in input_parameter_type2 >( input_parameter_type1 argument1, input_parameter_type2 argument2);
input_paramter_type, input_paramter_type1 dan input_paramter_type2 mewakili jenis parameter input, manakala argument1 dan argument2 ialah parameter yang digunakan dalam kaedah yang dirangkumkan oleh perwakilan tindakan.
Berikut ialah contoh berikut yang disebut di bawah :
Program C# untuk menunjukkan Perwakilan Tindakan untuk menggabungkan rentetan yang diberikan dan mencetak pernyataan sebagai output pada skrin.
Kod:
using System; //a class called check is defined class check { // a method called join is called which takes the parameter passed to the method and prints it as the output on the screen public static void join(string str) { Console.WriteLine("Welcome to {0}", str); } // main method is called within which the join function is called by defining an action delegate static public void Main() { //an action delegate is defined which takes one input parameter which is passed to the join method Action<string> stringvalue = join; stringvalue("C#"); } }
Output:
Atur cara di atas mentakrifkan kelas yang dipanggil "semak" dan menggunakan kaedah yang dipanggil "bergabung", yang mencetak parameter yang dihantar kepadanya sebagai output pada skrin. Seterusnya, kaedah utama memanggil fungsi "bergabung" dengan mentakrifkan perwakilan tindakan. Program ini kemudiannya mentakrifkan perwakilan tindakan yang mengambil satu parameter input.
Program C# untuk menunjukkan perwakilan Tindakan untuk mengira kuasa nombor tertentu.
Kod:
using System; //a class called check is defined class check { // a method called power is defined which takes two parameters passed to the method and calculates the power of the given number and displays it on the screen public static void power(double number1, double number2) { Console.WriteLine("The power of the given number is {0}", Math.Pow(number1, number2)); } // main method is called within which the power function is called by defining an action delegate static public void Main() { //an action delegate is defined which takes two input parameters which is passed to the power method Action<double, double> doublevalue = power; doublevalue(2,2); } }
Output:
Dalam program yang disediakan, kami mentakrifkan kelas bernama "semak". Kelas ini termasuk kaedah bernama "kuasa", yang mengira kuasa dua parameter yang diberikan yang dihantar kepadanya dan memaparkan hasilnya pada skrin. Selepas itu, kami menggunakan kaedah utama, di mana kami memanggil fungsi "kuasa" dengan mentakrifkan perwakilan tindakan. Kami juga mentakrifkan perwakilan tindakan yang menerima dua parameter input.
Program C# untuk menunjukkan perwakilan tindakan untuk mencari kuasa dua nombor yang diberikan.
Kod:
using System; //a class called check is defined class check { // a method called power is defined which takes two parameters passed to the method and calculates the power of the given number and displays it on the screen public static void square(int number) { Console.WriteLine("The square of the given number is {0}", number * number); } // main method is called within which the power function is called by defining an action delegate static public void Main() { //an action delegate is defined which takes one input parameter which is passed to the square method Action<int> answer = square; answer(3); } }
Output:
Dalam program di atas, kami mentakrifkan kelas yang dipanggil "semak." Dalam kelas ini, kami mentakrifkan kaedah bernama "kuasa" yang mengambil dua parameter sebagai input. Kaedah ini mengira kuasa nombor yang diberikan dan memaparkan hasilnya pada skrin. Selepas itu, kami menggunakan kaedah utama, di mana kami memanggil fungsi "kuasa" dengan mentakrifkan perwakilan tindakan. Secara khusus, kami mentakrifkan perwakilan tindakan yang menerima dua parameter input.
Dalam tutorial ini, kami memahami konsep perwakilan tindakan dalam C# melalui definisi, sintaks perwakilan tindakan dan kerja perwakilan tindakan dalam C# melalui contoh pengaturcaraan dan outputnya.
Atas ialah kandungan terperinci Perwakilan Tindakan C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!