AddElement()
Syntaxe
Resultat = AddElement(ListeChainee())Description
Ajoute un nouvel élément vide après l'élément courant de la ListeChainee() ou en tant que premier élément si la liste est vide. Ce nouvel élément devient l'élément courant de la liste.
Argument
ListeChainee() - Le nom de votre variable liste chaînée, créée à l'aide de la commande NewList. Les parenthèses sont obligatoires après le nom de la liste.
Valeur de retour
La valeur renvoyée par cette commande peut être utilisée pour déterminer si le nouvel élément a pu être ajouté ou non (si la mémoire est insuffisante par exemple). Si le nouvel élément a été créé, cette commande renvoie une valeur différente de zéro. Si le nouvel élément n'a pu être créé, alors elle renvoie la valeur zéro.
Pour programmeurs expérimentés:
La valeur renvoyée par cette commande est un pointeur vers le nouvel élément ou zéro si le nouvel élément n'a pu être crée. La structure de chaque élément est définie ci-dessous :Structure Element *Next.Element ; Pointeur vers l'élément suivant de la liste ou zéro si c'est le dernier élément *Previous.Element ; Pointeur vers l'élément précédent de la liste ou zéro si c'est le premier élément ; La structure utilisée par la liste suit directement ces 2 variables (ce qui implique que les ; données utilisateurs se situent à l'adresse du nouvel élément + 8 octets. EndStructureVous ne devriez pas changer les pointeurs du début de la liste, car ça casserait la structure interne de la liste.Exemple:
; La manière la plus simple d'utiliser AddElement NewList simple.w() AddElement(simple()) ; Crée le premier nouvel élément de la liste simple() = 23 AddElement(simple()) ; La position courante est le premier élément, alors nous en ajoutons un à la deuxième position simple() = 45 ; Ceci montre comment utiliser la valeur de retour de la fonction AddElement NewList experimentes.l() If AddElement(experimentes()) <> 0 experimentes() = 12345 Else MessageRequester("Erreur !", "Impossible d'allouer de la mémoire pour le nouvel élément", #PB_MessageRequester_OK) EndIf ; Une petite structure pour démontrer la description "programmeurs expérimentés" (ci-dessus) Structure Programmeur Nom.s Talent.b EndStructure Structure DingueDePureBasic *Next.DingueDePureBasic *Previous.DingueDePureBasic Nom.s ; Le même champ que la structure 'Programmeur' Talent.b EndStructure NewList LesProgrammeurs.Programmeur() ; La liste pour stocker les éléments *Element.DingueDePureBasic = AddElement(LesProgrammeurs()) If *Element<>0 *Element\Nom = "Dave" *Element\Talent = 3 ; Celui-là, c'est un féru de PureBasic ! ;) Else MessageRequester("Erreur !", "Impossible d'allouer de la mémoire pour le nouvel élément", #PB_MessageRequester_OK) EndIf
OS Supportés
Tous