delegate هي حاجة تشير الى دالة ، كنت زمان أنادي على الدالة من خلال انشاء object من كلاس ،
هون حاستخدم ال delegate للاشارة الى دالة ،
فايدتها لو عندي أكثر من دالة الها نفس النوع وبدي ياها تتنفذ بنفس الوقت ، أو انا بدي اختار انفذ واحدة منهم ، او بدي اطلع للمستخدم شو الدالة اللي بستخدمها بدون ما انفذها .
namespace_21 {
class program {
public delegate void m();
// لازم اول أعرف ال delegate دايما بكتبها قبل ال main .
// بما انها بتشير إلى دالة ، لازم توخد شكل الدالة اللي راح تشير الها .
// هون هي بتوخد void يعني ما بترجع قيمة وما بتوخد parameters وتشير الى الدالتين print - copy .
static void Main(string[] args)
{
m = new m(print);
// خود من m جسم object تشير الى الدالة print وكمان copy
x += new m(copy);
x();
// انادي عليهم بهاي الطريقة ، البارامتر هون فاضية يعني ما بكتب فيها اشي لانه الدالتين print- copy من نوع void
}
public void print()
{
Console.WriteLine("Print");
}
public void copy()
{
Console.WriteLine("Copy");
}
}}
No comments:
Post a Comment