2010-10-12 8 views
5

मैं सूची के बारे में MSDN docs देख रहा हूं। GetEnumerator।सार्वजनिक सूची <(Of <(<'T>)>)> .. :: .. गणनाकर्ता?

वे कहते हैं कि सी # विधि हस्ताक्षर है:

public List<(Of <(<'T>)>)>..::..Enumerator GetEnumerator() 

मैं इस बहुत सरल हस्ताक्षर उम्मीद कर रहा था: सभी विराम चिह्न के साथ,

public List<T>.Enumerator GetEnumerator() 

उनके हस्ताक्षर का क्या मतलब है और कीवर्ड "का" ?

संपादित करें: ठीक है, मुझे लगता है कि अगर किसी ने उस वाक्यविन्यास को नहीं देखा है, तो एमएसडीएन दस्तावेज़ केवल थोड़ी छोटी हैं, और यह सब कुछ है।

+0

अपमानजनक दस्तावेज का एक लिंक है? –

+0

@ जस्टिन, हाँ, लिंक शामिल करना भूल गए, क्षमा करें। –

+1

हाँ, यह अजीब लग रहा है। WTH वह है ?? – BFree

उत्तर

1

एमएसडीएन सभी अलग-अलग भाषाओं के लिए उस हस्ताक्षर की आपूर्ति के लिए कुछ कोड पीढ़ी का उपयोग करता है, और यह उस कोड में एक बग जैसा दिखता है जो वास्तविक भाषा को ध्यान में रखना भूल जाता है और केवल सभी वाक्यविन्यास आउटपुट करता है - इसमें हर जगह में भाषा में ऐसे रिटर्न प्रकार के लिए अपेक्षित वाक्यविन्यास से मिलान किया जाना चाहिए (हालांकि, स्वीकार्य रूप से, मुझे पूरी तरह से यकीन नहीं है कि एस्ट्रोफ़े कहाँ से है)।

अन्य पृष्ठों पर समान समस्या देखी जा सकती है, जैसे कि HashSet.GetEnumerator, लेकिन Queryable.AsQueryable जैसे अन्य लोगों पर नहीं, इसलिए ऐसा लगता है कि वे सब कुछ एक साथ उत्पन्न नहीं करते हैं, और बग को पेश/हटा दिया गया था उन दो पृष्ठों की पीढ़ी के बीच। (चूंकि हम नहीं जानते कि उनमें से प्रत्येक नया कितना नया है, हम अनुमान लगा सकते हैं कि यह पहले ही तय हो चुका है।)

मुझे नहीं पता कि उनके पास अब हर बार स्वचालित पुन: पीढ़ी चल रही है या नहीं, लेकिन यदि वे करते हैं, यह शायद जल्द ही खुद को ठीक कर देगा। यदि नहीं, तो आप समुदाय सामग्री अनुभाग में इसके बारे में एक टिप्पणी छोड़ सकते हैं।

संबंधित मुद्दे