Hi,

alle Werttypen wie etwa Char, Integer, Short, Long usw. haben
unterschiedliche Laufzeittypen. Das Ansprechen �ber einen anderen (nicht
vererbten oder von diesem abgeleiteten) Laufzeittyp mittels DirectCast ist
damit unm�glich.
Nat�rlich hat eine Variable vom Typ Short den gleichen Laufzeittyp wie eine
andere vom Typ Short und Char den gleichen wie Char - Da aber das unn�tig
ist, und ansonsten keine M�glichkeit besteht, zwischen den Werttypen einen
Austausch ohne Konvertierung hinzubekommen, hat man kurzerhand alle
Werttypen verboten.
Vielleicht gibt�s noch mehr Gr�nde(oder das war gar kein richtiger Grund*g*)
- mir hat der eine ausgereicht ;)

Mein Satz "au�er man bleibt beim gleichen Datentyp..." bezog sich nur auf
den gleichen Laufzeittyp. DirectCast kann es dennoch nicht bzw. nur �ber den
Umweg mit CObj().


Dies kann unter Umst�nden auch mal n�tig werden (ist allerdings ein
konstruiertes Beispiel!). Ich w�rde an dieser Stelle wohl eher CType
verwenden - sch�tz ich *g*.


Structure test
        Implements ICloneable
        '...
End Structure

Dim x As test
Dim f As ICloneable = DirectCast(CObj(x), ICloneable)



Viele Gr��e, Wolfgang
http://www.vbwelt.de/
 

> -----Urspr�ngliche Nachricht-----
> Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im
> Auftrag von Oskar Vaia
> Gesendet: Freitag, 11. Juni 2004 07:28
> An: [EMAIL PROTECTED]
> Betreff: AW: AW: [Vb.net] Directcast
> 
> Hallo Wolfgang,
> 
> da muss ich doch noch mal kurz nachhaken:
> 
> > Grunds�tzlich funktioniert das auch - nur ist es eben so, das Werttypen
> >nicht gewandelt werden k�nnen (weil dazu zwingend eine Konvertierung
> n�tig >ist - es sei denn man bleibt beim gleichen Datentyp was aber
> Quatsch ist >*g*).
> 
> "... es sei denn man bleibt beim gleichen Datentyp ..."
> 
> aber auch dies geht mit DirecCast nicht, oder?
> 
> Dim x As Int16 = 5
> Dim y As Int16 = DirectCast(x, Int16)
> 
> Da gibt es gleich im VS.NET eine Fehlermeldung:
> 
> "Der "DirectCast"-Operand muss ein Verweistyp sein, aber "Short" ist ein
> Werttyp."
> 
> Habe ich da deine Aussage oben missverstanden?
> 
> Gr��e
> 
> Oskar


_______________________________________________
Vb.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/vb.net

Odpovedet emailem