Array vom Typ Mehrfach-Struktur und Übergabe an Procedur
Verfasst: 15.01.2020 20:42
Hallo, Leute, ... ich bin's mal wieder, der ahnungslose Peter.
Folgendes:
Ich möchte eine Variable mit Struktur-Typ an eine Procedur übergeben.
Diese Struktur hat wiederum eine Variable mit Struktur.
Also etwa folgendes:
Structure inStruct
a.s
b.i
EndStructure
Structure test
Array c.inStruct(0)
d.s
EndStructure
In Sachen der Übergabe habe ich wohl so ziemlich alles durch, was googeln so hergibt. Aber wahrscheinlich habe ich die Sache nicht ganz verstanden, vor allem was Pointer betrifft.
In einem anderen Programm habe ich eine ganz ähnliche Situation, jedoch mit List's und Map's. Ich gehe dabei völlig gleich vor und das ganze läuft sauber. Aber hier funktioniert NICHTS
.
Natürlich könnte ich das ganze lösen, indem ich 'e' einfach Global setze und auf die Pointerei verzichte. Aber ich mag Globals nicht so sehr.
Für Hilfe und Klärung wäre ich sehr dankbar.
Folgendes:
Ich möchte eine Variable mit Struktur-Typ an eine Procedur übergeben.
Diese Struktur hat wiederum eine Variable mit Struktur.
Also etwa folgendes:
Structure inStruct
a.s
b.i
EndStructure
Structure test
Array c.inStruct(0)
d.s
EndStructure
In Sachen der Übergabe habe ich wohl so ziemlich alles durch, was googeln so hergibt. Aber wahrscheinlich habe ich die Sache nicht ganz verstanden, vor allem was Pointer betrifft.
In einem anderen Programm habe ich eine ganz ähnliche Situation, jedoch mit List's und Map's. Ich gehe dabei völlig gleich vor und das ganze läuft sauber. Aber hier funktioniert NICHTS
Code: Alles auswählen
Structure inStruct
a.s
b.i
EndStructure
Structure test
Array c.inStruct(0)
d.s
EndStructure
Procedure meinTestArray(*e.test)
Debug ;hier möchte ich zum Beispiel 'b' aus inStruct ausgeben, oder ArraySize(*e) abrufen.
;weder *e(0)\c(0)\b wird vom Compiler akzeptiert, noch ArraySize(*e)
EndProcedure
Procedure meinTest()
Dim *e.test(0)
e(0)\c(0)\b=1
meinTestArray(@e())
EndProcedure
meinTest()Für Hilfe und Klärung wäre ich sehr dankbar.