Hallo,
hab mal wieder eine Anfängerfrage, weil ich es noch nicht ganz verstanden hab.
Kann mir bitte jemand den Unterschied zwischen
Irgendwas i=(Irgendwas) irgendwasähnliches;
und
Irgendwas i=irgendwasähnliches as Irgendwas;
Habe zwar schon Doku gelesen, aber der Unterschied ist mir nicht ganz klar. 🤔
Danke
Hallo,
"as" funktioniert im gegensatz zum Cast nur mit reference-types und nicht mit value types (also z.b. "int").
Wenn in deinem Beispiel
Irgendwas i=irgendwasähnliches as Irgendwas;
Irgendwas i=(Irgendwas) irgendwasähnliches;
"irgendwasähnliches" nicht in den Typ "Irgendwas" umgewandelt werden kann passiert folgendes:
"as" gibt für i einfach null zurück. (null == reference type)
der cast feuert jedoch eine InvalidCast Exception.