Yazın 'T' olamaz değere dönüştürülmesi | Netgez.com
SORU
3 Kasım 2010, ÇARŞAMBA


Yazın 'T' olamaz değere dönüştürülmesi

Bu büyük olasılıkla bir acemi bir soru olacak ama google şaşırtıcı bir cevap vermedi.

Oldukça yapay bu yöntem var

    T HowToCast<T>(T t)
    {
        if (typeof(T) == typeof(string))
        {
            T newT1 = "some text";
            T newT2 = (string)t;
        }

        return t;
    }

C bilgim gelen bu çalışması bekleniyor. Ancak, "türü örtülü olarak 'T'" ve "tipi" '" yukarıda atamaları için hem de. T dizeye dönüştürülemiyor dizeye dönüştürülemiyor ile derleme başarısız

Kavramsal olarak yanlış bir şey yapıyorum ya da yanlış sözdizimi vardır. Bana bu tür bir yardım lütfen.

Teşekkür ederim!

CEVAP
3 Kasım 2010, ÇARŞAMBA


if bir blok içinde olsa bile, derleyici T string olduğunu bilmiyor.
Bu nedenle, dökme izin vermez. (Olamaz string DateTime dökme aynı sebepten)

İhtiyacınız atama object, (herhangi bir T can atmak) ve oradan string (object olabilir döküm string).
Örneğin:

T newT1 = (T)(object)"some text";
string newT2 = (string)(object)t;

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • Huot Media

    Huot Media

    7 Mayıs 2010
  • Ludique

    Ludique

    21 NÄ°SAN 2009