SORU
29 Mart 2012, PERŞEMBE


Neden nesne türü dinamik bir null başvuru özel durumu atma nesnesi için döküm mı?

Aşağıdaki işlevi var:

public static T TryGetArrayValue<T>(object[] array_, int index_)
{
    ... //some checking goes up here not relevant to question

    dynamic boxed = array_[index_];
    return (T)boxed;
}

Aşağıdaki şekilde söyleyince

object a = new object();
object v = TUtils.TryGetArrayValue<object>(new object[] { a }, 0);

(T)boxed null başvuru özel durumu atar.

Başka tip I diğer "nesne", gayet iyi çalışıyor. daha koy
Ne güzel bir istisna atma neden herhangi bir fikir?

Edit: Dinamik kullanıyorum nedeni, örneğin: tür dönüştürme özel durumu önlemek için

double a = 123;
int v = TUtils.TryGetArrayValue<int>(new object[] { a }, 0);

CEVAP
29 Mart 2012, PERŞEMBE


Bu bir hata gibi görünüyor söyleyen diğer answerers katılıyorum. Özellikle detaylı bir soruşturma değil ama bir hata olması C# çalışma zamanı bağlama katmanı görünür.

Ben hata için özür dilerim. # 5 C test ekibine rapor edeceğim ve eğer zaten C# 5 rapor sabit olup olmadığını göreceğiz. (Zaten biliyorduk ve her şey çözüldü çok düşüktür bu yüzden son beta sürümü çoğalır,.) Değilse, bir düzeltme son sürüm haline gelmesi mümkün değildir. Bu durumda Olası hizmet veren bir yayın için kabul edeceğiz.

Bizim bu konuda bilgilendirdiğin için teşekkürler. Eğer entering a Connect issue gibi takip etmeyi düşünüyorsanız, bunu yapmak için çekinmeyin ve bu StackOverflow soru için bir link eklemeyi unutmayın. Eğer doğru değilse, hiçbir sorun yok; test ekibi bu konuda her iki şekilde de bilecek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Leigh Momii

    Leigh Momii

    10 Mayıs 2006
  • TeachMeComputer

    TeachMeCompu

    31 EKİM 2009
  • Unbox Therapy

    Unbox Therap

    21 Aralık 2010