CompareMap()
Syntax
Ergebnis = CompareMap(Map1(), Map2() [, Flags])Beschreibung
Vergleicht alle Elemente der beiden Maps auf Gleichheit. Vergleicht rekursiv auch Inhalte strukturierter Maps mit dynamischen Elementen (wie eingebetteter Arrays, Listen oder Maps).
Die beiden Maps gelten als gleich, wenn sie den gleichen Typ und die gleiche Größe haben und wenn jedes Elemente-Paar gleich ist.
Parameter
Map1(), Map2() Die zu vergleichenden Maps. Flags (optional) Kann eine Kombination der folgenden Werte sein: #PB_String_CaseSensitive : Beim String-Vergleich wird die Groß-/Kleinschreibung beachtet (a=a). (Standard) #PB_String_NoCase : Beim String-Vergleich wird die Groß-/Kleinschreibung nicht beachtet (a=A). #PB_Memory_FollowPointers: Wenn ein Strukturelement ein Zeiger (Pointer) ist, der nicht 0 ist, wird das Ziel des Zeigers rekursiv verglichen. Standardmäßig wird nur der Zeigerwert selbst verglichen. Siehe die Anmerkungen unten für weitere Details.
Rückgabewert
Gibt einen Wert ungleich Null zurück, wenn beide Maps gleich sind, oder Null, wenn sie sich unterscheiden.
Anmerkungen
Die Option #PB_Memory_FollowPointers ist für fortgeschrittene Benutzer gedacht und erfordert besondere Sorgfalt, um Abstürze zu vermeiden. Wenn diese Option verwendet wird, müssen alle Zeigerwerte auf einen gültigen und initialisierten Speicher zeigen oder den Wert 0 haben. Es ist auch nicht erlaubt, Schleifen in den pointierten Elementen (englisch "pointed elements" - eine Kette von Zeigern, die auf sich selbst verweist) zu haben.
Beispiel
NewMap A() A("de") = 49 A("fr") = 33 A("uk") = 44 NewMap B() ; ein Element fehlt B("de") = 49 B("uk") = 44 Debug CompareMap(A(), B()) ; Nicht gleich
Siehe auch
CompareArray(), CompareList()
Unterstützte OS
Alle