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
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;
Yazın kullanmak nesne dizisi olarak st...
Ne'kontrol s kurallı şekilde pyth...
Çalışma türü gömülü olamaz...
Varsayılan programlı eşdeğer(Yazın)...
Bir Dockerfile CMD yazın ve GİRİŞ aras...