Zugriff auf Variable außerhalb eines Types

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Der Eisvogel

Betreff: Zugriff auf Variable außerhalb eines Types

BeitragDo, Okt 28, 2010 18:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Folgende Situation:

BlitzMax: [AUSKLAPPEN]
Local lala:Int = 5

Type test
Field lala:Int

Method change()
lala = 3
Print "changed"
End Method
End Type

Local t:test = New test

Print t.lala
Print lala

t.change

Print t.lala
Print lala


Ich möchte mit der Methode "change" die globala Variable außerhalb des Types verändern. Mit Super gehts nicht. Geht es überhaupt? oder muss ich die Variable im Type zwangsläufig anders benennen um auf die außenliegende zugreifen zu können?

MfG
Der Eisvogel
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.
 

undefined

BeitragDo, Okt 28, 2010 18:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Also erstmal muss lala global sein (sie ist bei Dir lokal). Und dann kannst Du durch einen Punkt vor dem lala in der Methode die Variable eine Ebene höher ansprechen. Diesen Punkt kannst Du Dir in seiner Funktion ähnlich vorstellen wie das "..\" in einem Dateipfad. Du kannst vor einer Variable auch den kompletten Scope angeben (zb. wenn Du in verschiedenen Modulen gleiche Globalen und/oder Funktionen hast).

Der Eisvogel

BeitragFr, Okt 29, 2010 22:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Cool, Danke!
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group