नीचे दिए गए सी # कोड में, मुझे _()
अजीब का उपयोग मिला। क्या कोई इसका मतलब बता सकता है?वाक्यविन्यास का अर्थ: वापसी _(); IENumerable <TSource> _()
public static IEnumerable<TSource> DistinctBy<TSource, TKey>(this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector, IEqualityComparer<TKey> comparer)
{
if (source == null) throw new ArgumentNullException(nameof(source));
if (keySelector == null) throw new ArgumentNullException(nameof(keySelector));
return _(); IEnumerable<TSource> _()
{
var knownKeys = new HashSet<TKey>(comparer);
foreach (var element in source)
{
if (knownKeys.Add(keySelector(element)))
yield return element;
}
}
}
I * वास्तव में * आशा है कि यह पैटर्न कैच नहीं करेगा। यह सिर्फ बदसूरत है। –
मुझे कभी भी पसंद नहीं आया कि स्थानीय कार्यों में किसी भी तरह की पहचान करने वाले कीवर्ड की कमी क्यों होती है - उदाहरण के लिए, वे स्थानीय प्रतिनिधि या ऑब्जेक्ट प्रारंभकर्ता सूची के लिए आसानी से उलझन में हैं। एक साधारण 'func' कीवर्ड या अनिवार्य लैम्ब्डा वाक्यविन्यास' => 'मदद करेगा)। – Dai
स्थानीय समारोह वैसे भी अनावश्यक लगता है। –