CompareList()
Syntaxe
Resultat = CompareList(Liste1(), Liste2() [, Options])Description
Compare chaque élément des deux listes pour vérifier leur égalité.
Arguments
Liste1(), Liste2() Les listes à comparer. Options (optionnel) Peut être une combinaison des valeurs suivantes : #PB_String_CaseSensitive : La comparaison des chaînes est sensible à la casse (a=a). (par défaut) #PB_String_NoCase : La comparaison des chaînes n'est pas sensible à la casse (A=a). #PB_Memory_FollowPointers : Si un élément de structure est un pointeur qui n'est pas 0, compare récursivement la cible du pointeur. La valeur par défaut consiste à comparer uniquement la valeur (existante) du pointeur elle-même.
Valeur de retour
Renvoie une valeur non nulle si les deux listes sont identiques, zéro sinon.
Remarques
Compare de manière récursive également le contenu de listes structurées avec des éléments dynamiques (tels que des tableaux intégrés, des listes ou des maps).
Les deux listes sont considérées comme égales si elles ont le même type et la même taille et si chaque paire d’éléments est identique.
L'option #PB_Memory_FollowPointers est destinée aux utilisateurs avancés et nécessite une attention particulière pour éviter les plantages. Si cette option est utilisée, alors toutes les valeurs de pointeur doivent pointer vers une mémoire valide et initialisée ou avoir la valeur 0. Il n'est pas non plus autorisé d'avoir des boucles dans les éléments pointés (une chaîne de pointeurs qui se renvoie à elle-même).
Exemple
NewList A$() AddElement(A$()) : A$() = "Jean" AddElement(A$()) : A$() = "Charles" AddElement(A$()) : A$() = "Didier" NewList B$() AddElement(B$()) : B$() = "JEAN" ; Casse différente AddElement(B$()) : B$() = "Charles" AddElement(B$()) : B$() = "Didier" Debug CompareList(A$(), B$()) ; Pas égal Debug CompareList(A$(), B$(), #PB_String_NoCase) ; Égal
Voir aussi
CompareArray(), CompareMap()
OS Supportés
Tous