जब तक विधि समूह SomeObject.SomeMethod
में वापसी प्रकार void
के साथ एक विधि है और कोई पैरामीटर नहीं लेना कोई अंतर नहीं है। ऐसा इसलिए है क्योंकि ThreadStart
को delegate
के रूप में परिभाषित किया गया है जो void
देता है और कोई पैरामीटर नहीं लेता है और इसलिए विधि समूह SomeObject.SomeMethod
से ThreadStart
पर एक अंतर्निहित रूपांतरण होता है। इस प्रकार, दोनों Thread
कन्स्ट्रक्टर के ओवरलोड Thread(ThreadStart)
का आविष्कार कर रहे हैं।
भाषा विनिर्देश का प्रासंगिक खंड §6.6 (विधि समूह रूपांतरण) है।
मेरे पास एक साधारण सवाल है: फ़ंक्शन संदर्भ को पारित करने के विरोध में सी # प्रतिनिधि को तत्काल करने का क्या फायदा है?
तो, यहां शब्दावली का एक सुधार।
class MyObject {
public void SomeMethod() { }
}
MyObject someObject = new MyObject();
के साथ बात someObject.SomeMethod
से दर्शाया जाता है एक विधि समूह है। आप केवल इसके बारे में सोच सकते हैं क्योंकि ओवरलोडेड विधियों के सेट को someObject.SomeMethod
नोटेशन का उपयोग करके देखा जा सकता है।
संभावित डुप्लिकेट [नई क्रिया() और लैम्ब्डा के बीच क्या अंतर है?] (Http://stackoverflow.com/questions/765966/what-is-the-difference-between-new-action-and- ए-लैम्ब्डा) – nawfal