ich hätte da mal eine Frage zu den Pointern. Ich habe mir jetzt alle
Informationen zu Pointern durchgelesen, jedoch, wenn ich das
in ein Beispiel umsetzten will, krieg ich es nicht hin.
Also folgenden Code habe:
Code: Alles auswählen
;***** Structuren definieren
Structure structTab
lId.l
sName.s
EndStructure
Structure structZellinh
lId.l
lZeile.l
lSpalte.l
sZelleninh.s
EndStructure
Structure structZeile
lId.l
lZeile.l
qStringHash.q
EndStructure
;***** Structuren definieren Ende
;***** LinkedList
Global NewList DB1Tab.structTab()
Global NewList DB1Zellinh.structZellinh()
Global NewList DB1Zeile.structZeile()
Global NewList DB2Tab.structTab()
Global NewList DB2Zellinh.structZellinh()
Global NewList DB2Zeile.structZeile()
;***** LinkedList Ende
;... Hier folgt der Code zum füllen der LinkedListen
; Anschließend vergleiche ich diese beiden Linkedlisten DB1 mit DB2
ForEach DB2Zeile()
ForEach DB1Zeile()
If DB2Zeile()\qStringHash=DB1Zeile()\qStringHash
lx.l = 1
EndIf
Next
; CallDebugger
If lx = 1
; Debug "Datensatz vorhanden" + Str(DB2Zeile()\qStringHash)
Else
Debug "Datensatz nicht vorhanden"
EndIf
lx = 0
Next
Ich denke ja, nur ich weis noch nicht genau wie.
Besonders weis ich nicht ob der Vergleich der beiden Linkedlisten
durch Pointer beschleunigt wird, da ich ja hier nur StringHash (longs)
vergleiche.
Nur als Hinweis: DB1 und DB2 beinhalten je 180.000 Datensätze.
Dadurch wird ja der Vergleich erheblich Zeit verbrauchen. Geht
es mit Pointern schneller????
Ich hoffe es könnte mir hier jemand Hilfestellung geben, damit ich
anhand des o. g. Code das mit den Pointern verstehen lerne.
Schon mal vielen Dank für Eure Mühe.
Viele Grüße