ما هو الفرق بين الأحداث مع مندوب معالجات و تلك دون ؟

StackOverflow https://stackoverflow.com/questions/119160

  •  02-07-2019
  •  | 
  •  

سؤال

ما هو الفرق بين هذا:

this.btnOk.Click += new System.EventHandler(this.btnOK_Click);

و هذا ؟

this.btnOk.Click += this.btnOK_Click;

وكلاهما العمل.السابق هو ما Visual Studio الافتراضي عند استخدام قصاصات.ولكن يبدو أن ذلك فقط إعلانات إضافية إسهاب ، أو أنا في عداد المفقودين شيئا ؟

هل كانت مفيدة؟

المحلول

لا فرق.حذف مندوب مثيل هو مجرد جملة الحلوى ؛ C# compiler سوف تولد مندوب مثيل لك تحت غطاء محرك السيارة.

نصائح أخرى

في C# 3.0 أو في وقت لاحق هذا لا فرق.قبل C# 3.0 EventHandlers كان مطلوبا بسبب مترجم القيود ، ولكن مع ظهور C# 3.0, النموذج الثاني هو المفضل إلا إذا كنت تريد أن تكون صريحة جدا.

وأعتقد أن C# منذ 3.0 قد ضمنا وأضاف مندوب معالج.ومع ذلك ، فإنه يمكن أن يساعد على أن تكون أكثر وضوحا ، وخاصة عندما يكون هناك عدة الممكن مندوب أنواع.

"+= Delegate_Name" هو جملة السكر.المترجم إنشاء المجمع الجديد بالنسبة لك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top