Xojo Conferences
XDCMay2019MiamiUSA

Dictionary und Remove (Real Studio network user group Deutschland Mailinglist archive)

Back to the thread list
Previous thread: Titel eines Druckauftrages vergeben
Next thread: Datenbank Frage


Probleme mit String Bearbeitung   -   Markus Schnell
  Dictionary und Remove   -   info it-rosenowski.de
   Re: Dictionary und Remove   -   Andy Fuchs

Dictionary und Remove
Date: 05.08.08 13:45 (Tue, 05 Aug 2008 14:45:11 +0200)
From: info it-rosenowski.de
Hi,

wenn ich ein Dictionary mit 10 Einträgen fülle bekommen alle Einträge
einen internen Index von RB von 0 bis 9.

IDX ... Key
0 ... 1
1 ... 2
...
9 ... 10

Nun lösche ich den ersten Eintrag in diesem Dictionary über
Dict.remove(dict.key(0)). Nach diesem Remove erwartetet ich folgendes
Resultat:

IDX ... Key
0 ... 2
1 ... 3
...
8 ... 10

Das Ergebnis welches RB liefert sieht aber so aus:

IDX ... Key
0 ... 10
1 ... 2
...
8 ... 9

RB setz den letzten Eintrag des Dictionarys auf den frei gewordenen Index.
Dies ist auch so, wenn ich einen Eintrag mitten im Dictionary entferne.
Der letzte Eintrag wird auf den frei gewordenen Index verschoben.
Kann mir jemand erklären warum das so ist?

Rossi

Re: Dictionary und Remove
Date: 05.08.08 13:55 (Tue, 05 Aug 2008 14:55:16 +0200)
From: Andy Fuchs
Interne Indizes werden von der Datenbank 'intern' wiederbenutzt. Sie dienen
lediglich der Datenbank selbst als Pointer zu einem Datensatz. Die
Datensätze werden dadurch fortlaufend nummeriert. Wenn Du nun einen
Datensatz löscht, ist die erste (nächste) fortlaufende Nummer idR. die des
gelöschten Datensatzes (d.h diese 'sieht' die DB zuerst).

a.

On 05.08.08 14:45, "<email address removed>" <<email address removed>> wrote:

> Kann mir jemand erklären warum das so ist?