Buchempfehlung
Visual Basic 6 Kochbuch
Visual Basic 6 Kochbuch
Viele praktische Tipps zum Programmieren mit Visual Basic 6, die sich oft auch auf FB übertragen lassen. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

fb:porticula NoPaste

Info
Info / Hilfe
Liste
Übersicht / Liste
Neu
Datei hochladen
Suche
Quellcode suchen
Download
Dateidownload

Ctors-Beispiel

Uploader:RedakteurMOD
Datum/Zeit:22.09.2010 14:43:03

'Klasse
Type myClass
    Declare Constructor
    Declare Constructor (x As Integer)
    Declare Constructor (x As String)

    variable As Integer
End Type


'Leerer Ctor: Wenn man andere Ctors definiert, sollte man den auch definieren
'sonst geht sowas nicht mehr: 'Dim as myClass myVar'
Constructor myClass
    'hier mal nichts machen
End Constructor

'Dieser Ctor nimmt einen Integer entgegen
Constructor myClass (x As Integer)
    'Wert direkt zuweisen
    variable = x
End Constructor

'Dieser nimmt einen String entgegen, hier kann also definiert werden,
'wie damit umgegangen wird
Constructor myClass (x As String)
    'irgendeine Zuweisung..ist ja nur ein Beispiel
    If x = "a" Then
        variable = 1
    ElseIf x = "b" Then
        variable = 10
    Else
        variable = 100
    EndIf
End Constructor


Dim As myClass myVar1   'ruft den leeren Ctor auf, hier passiert nichts
Print myVar1.variable   'die Variable ist leer

Dim As myClass myVar2 = 77  'hier wird der Integer-Ctor aufgerufen
Print myVar2.variable       'der Wert wurde direkt zugewiesen

Dim As myClass myVar3 = "b" 'zu guter letzt der String, der irgendwie verarbeitet werden soll
Print myVar3.variable       '"b" soll 10 zuweisen


Sleep

/'
Man könnte auch Methoden definieren, die diese Funktionen erfüllen,
allerdings dürfte man bei der Deklaration der Variablen nichts direkt
zuweisen, sondern müsste im nachhinein die Methoden aufrufen.

Ctors sind sehr praktisch und die Überladung macht sie gerade so vielseitig
'/