لا لزوم له الاختيار لاغيا في KeyedCollection .Contains (TKey)

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

  •  05-07-2019
  •  | 
  •  

سؤال

وفقط وجدت الاختيار باطل لا لزوم له في KeyedCollection.Contains (TKey).

ونقدر انها مجرد الأمثل صغير جدا، ولكن لا ينبغي أن يعتقد أن اختار هذا النوع من عدم الكفاءة من قبل أداة تحليل رمز الآلي؟

وهنا يكمن C # التي تم إنشاؤها بواسطة عاكس:

public bool Contains(TKey key)
{
    if (key == null)
    {
        ThrowHelper.ThrowArgumentNullException(ExceptionArgument.key);
    }
    if (this.dict != null)
    {
        return this.dict.ContainsKey(key);
    }
    if (key != null) // Not needed as key cannot be null
    {
        foreach (TItem local in base.Items)
        {
            if (this.comparer.Equals(this.GetKeyForItem(local), key))
            {
                return true;
            }
        }
    }
    return false;
}

وأيضا، ما هي أفضل طريقة لإرسال في التصحيح؟ ؛-) من خلال صافي المنتديات أو <؟ / P>

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

المحلول

وعلى الأرجح أن يكون الأمثل على ذلك JIT على أي حال، لذلك لا تحتاج حقا أن تقلق بشأن ذلك. على أي حال، فإن تكلفة فحص باطل قريبة من الصفر.

لتقرير الشوائب، يمكنك استخدام موقع ويب Microsoft الاتصال. ولكن لا أعتقد أنها سوف اصلاحها ...

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