German Wie kann ich einer Variablen unterschiedliche Klassen zuordnen?

Discussion in 'German Forum' started by Knoppi, Jun 13, 2018.

  1. Knoppi

    Knoppi Active Member Licensed User

    Wie kann ich einer Variablen unterschiedliche Klassen zuordnen?

    Ich möchte so etwas wie hier machen, da beide Klassen gleiche Methoden haben aber auf unterschiedliche Daten zugreifen wäre eine solche Zuweisung echt praktisch.
    Code:
    If Version=1 then
      
    Dim Klasse as ClassVersion1
    else
      
    Dim Klasse as ClassVersion2
    End If
    Log( Klasse.Version)
     
  2. MarkusR

    MarkusR Active Member Licensed User

    ich glaube da würde ich eine dritte Klasse machen welche dann die versions abhängige Methode/Sub/Funktion aufruft.
    in c# hättest du da zwei Klassen die sich ein Interface teilen.

    man kann zwar alles in ein Object ablegen aber dann kennt der compiler nicht welche methoden es haben könnte zur laufzeit darum müßte man es wieder
    zurück wandeln und damit ist dir wohl auch nicht geholfen.
    Code:
    Dim Klasse As Object
        
    Dim Klasse1 As Class1
        
    Dim Klasse2 As Class2
        
    If 1=0 Then
            Klasse1.Initialize
            Klasse = Klasse1
        
    Else
            Klasse2.Initialize
            Klasse = Klasse2
        
    End If
        
    If Klasse Is Class1 Then
            
    Dim Cast1 As Class1
            Cast1 = Klasse
            
    Log(Cast1.Version)  
        
    End If
        
    If Klasse Is Class2 Then
            
    Dim Cast2 As Class2
            Cast2 = Klasse
            
    Log(Cast2.Version)
        
    End If
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice