2010-11-19 4 views
0

Betrachten Sie diese examlpeVerbessert es das Leistungscasting auf niedrigere Typen?

Interface IInterface 
    Property MyProperty 
End Interface 

Class MyClassy : Implements IInterface 
    Public Property MyProperty 
End Class 

Class MyClassy2 : Inherits MyClassy 
End MyClassy 
Class MyClassy3 : Inherits MyClassy 
End MyClassy  
Class MyClassy4 : Inherits MyClassy 
End MyClassy 
Class MyClassy5 : Inherits MyClassy 
End MyClassy 

Private Sub MyHandler(sender As Object, e As EventArgs) 
    'Here is my question: 

    Dim lowLevel = DirectCast(sender, IInterface).MyProperty 

    'vs. 

    Dim highLevel = DirectCast(sender, MyClassy5).MyProperty 

End Sub 

Die Art der sender in dem obigen Beispiel vom Typ MyClassy5.

Gibt es Leistungsunterschiede zwischen den beiden Gusstypen?

Antwort

0

Da DirectCast keine Laufzeit-Helfer für die Besetzung verwendet, sollte die Leistung gleich sein. Aber Sie sollten sich nicht darum kümmern, es sei denn, Sie machen Millionen von Güssen pro Sekunde.

Verwandte Themen