में अज्ञात प्रतिनिधियों मैं एक प्रतिनिधि के लिए केवल एक ही कॉल के लिए एक प्रतिनिधि को परिभाषित करने और नामकरण करने से थक गया अकेला नहीं हो सकता जिसके लिए एक प्रतिनिधि की आवश्यकता होती है। उदाहरण के लिए, मैं संभवतः अन्य धागे से एक के रूप में .refresh() कॉल करने के लिए चाहता था, इसलिए मैं इस कोड लिखा है:सी #
private void RefreshForm()
{
if (InvokeRequired)
Invoke(new InvokeDelegate(Refresh));
else
Refresh();
}
मैं भी यकीन है कि मैं करने के लिए, मैं सिर्फ पर्याप्त पढ़ा है कि डरने की नहीं कर रहा हूँ यह कुछ बाद के चरण में काम नहीं करेगा।
InvokeDelegate वास्तव में किसी अन्य फ़ाइल में घोषित किया गया है, लेकिन क्या मैं वास्तव में इस के लिए समर्पित एक संपूर्ण प्रतिनिधि की आवश्यकता है? क्या कोई सामान्य प्रतिनिधि नहीं हैं?
मेरा मतलब है, उदाहरण के लिए, एक पेन क्लास है, लेकिन पेन भी हैं। पेन-ऑफ-पसंद इसलिए आपको पूरी चीज को रीमेक करने की ज़रूरत नहीं है। यह वही नहीं है, लेकिन मुझे आशा है कि आप समझेंगे कि मेरा क्या मतलब है।
सी # में "अज्ञात प्रतिनिधि" जैसी कोई चीज़ नहीं है। प्रतिनिधि हैं (जैसे आप उपयोग कर रहे हैं) और अनाम विधियां (जो केवल एक प्रतिनिधि के माध्यम से सुलभ हैं)। – Lucas
मुझे लगता है कि सी # spec शब्द "अज्ञात विधि" का उपयोग करता है क्योंकि यह सही तरीका होगा। हालांकि, इस शब्द का उपयोग बहुत से लोगों द्वारा पैरामीटर के रूप में अज्ञात विधि के साथ तत्काल एक प्रतिनिधि का मतलब है। इसलिए, उनका मतलब एक ही बात है, लेकिन जिस संदर्भ में कोई व्यक्ति दूसरे शब्द पर एक शब्द का उपयोग कर सकता है, उस पर अक्सर निर्भर करता है कि कोई प्रतिनिधि असाइनमेंट होता है या यदि अज्ञात विधि सीधे किसी अन्य विधि से पारित की जा रही है या नहीं। मैं इसके विपरीत किसी भी तर्क का स्वागत करता हूं। –