PushMapPosition

Commande de map

Syntaxe

Mémorise l’entrée courante d’une table sur une pile, pour que PopMapPosition() puisse y revenir.

PushMapPosition(<map>())

Les éléments

<map>La table, écrite avec ses parenthèses vides : stock(). Ce doit être une variable NewMap ou un champ table d’un enregistrement.

À savoir

  • Chaque table a sa propre pile. Les empilements et dépilements vont par paires : la dernière position empilée est la première dépilée.
  • S’il n’y a pas d’entrée courante, cet état est mémorisé : PopMapPosition() laisse alors la table sans entrée courante.
  • Utilisez la paire autour d’une recherche dans un FOREACH, qui sinon déplacerait le curseur de la boucle.

Exemple

NewMap price.i()price("apple") = 3price("pear") = 5price("plum") = 2FOREACH price()  PushMapPosition(price())  FindMapElement(price(), "pear")  best = price()  PopMapPosition(price())  Console(MapKey(price()) + " " + Str(best - price()))   ' apple 2, pear 0, plum 3NEXT
Dans le manuel : Tableaux, listes et maps