Fonctions d’exécution de conteneur X++

Note

Les groupes d’intérêts communautaires sont maintenant passés de Yammer à Microsoft Viva Engage. Pour participer à une communauté Viva Engage et participer aux dernières discussions, renseignez le formulaire Demander l’accès à la communauté Finance et Operations Viva Engage , puis choisissez la communauté que vous souhaitez rejoindre.

Cet article décrit les fonctions d’exécution de conteneur.

Ces fonctions manipulent le contenu des conteneurs.

conDel

Supprime le nombre spécifié d’éléments d’un conteneur.

Syntaxe

container conDel(container container, int start, int number)

Paramètres

Paramètre Description
container Conteneur à partir duquel supprimer des éléments.
start Position unique à partir de laquelle commencer à supprimer des éléments.
Numéro Nombre d’éléments à supprimer.

Valeur renvoyée

Nouveau conteneur qui n’inclut pas les éléments supprimés.

Example

static void conDelExample(Args _args)
{
    container c = ["Hello world", 1, 3.14];
    
    // Deletes the first two items from the container.
    c = conDel(c, 1, 2);
}

conFind

Recherche la première occurrence d’un élément dans un conteneur.

Syntaxe

int conFind(container container, anytype element)

Paramètres

Paramètre Description
container Conteneur à rechercher.
element Élément à rechercher.

Valeur renvoyée

0 si l’élément n’a pas été trouvé ; sinon, numéro de séquence de l’élément.

Example

static void conFindExample(Args _args)
{
    container c = ["item1", "item2", "item3"];
    int i = conFind(c, "item2");
    int j = conFind(c, "item4");

    print "Position of 'item2' in container is " + int2Str(i);
    print "Position of 'item4' in container is " + int2Str(j);
}

conIns

Insère un ou plusieurs éléments dans un conteneur.

Syntaxe

container conIns(container container, int start, anytype element, ... )

Paramètres

Paramètre Description
container Conteneur dans lequel insérer des éléments.
start Position à laquelle insérer des éléments.
element Un ou plusieurs éléments à insérer, séparés par des virgules.

Valeur renvoyée

Nouveau conteneur qui contient les éléments insérés.

Remarques

Le premier élément du conteneur est spécifié par le nombre 1. Pour insérer après l’élément n, le paramètre de début doit être n+1. Vous pouvez également utiliser l’opérateur += pour ajouter des valeurs de n’importe quel type à un conteneur. Par exemple, pour créer un conteneur qui contient les valeurs carrées des 10 premières itérations de boucle, utilisez le code suivant.

int i;
container c;

for (i = 1; i < = 10; i++)
{
    // Append the square of the index to the container
    c += i*i;
}

Example

static void conInsExample(Args _arg)
{
    container c;
    int i;

    c = conIns(c,1,"item1");
    c = conIns(c,2,"item2");

    for (i = 1 ; i <= conLen(c) ; i++)
    {
        // Prints the content of a container.
        print conPeek(c, i);
    }
}

conLen

Récupère le nombre d’éléments d’un conteneur.

Syntaxe

int conLen(container container)

Paramètres

Paramètre Description
container Conteneur dans lequel compter le nombre d’éléments.

Valeur renvoyée

Nombre d’éléments dans le conteneur. Le conteneur conNull n’a aucun élément.

Example

static void conLenExample(Args _arg)
{
    container c = conins(["item1", "item2"], 1);

    for (int i = 1 ; i <= conLen(c) ; i++)
    {
        print conPeek(c, i);
    }
}

conNull

Récupère un conteneur vide.

container conNull()

Valeur renvoyée

Conteneur vide.

Example

static void conNullExample(Args _arg)
{
    container c = ["item1", "item2", "item3"];

    print "The size of container is " + int2str(conLen(c));

    // Set the container to null.
    c = conNull();
    print "Size of container after conNull() is " + int2Str(conLen(c));
}

conPeek

Récupère un élément spécifique d’un conteneur et le convertit en un autre type de données, si la conversion est nécessaire.

Syntaxe

anytype conPeek(container container, int number)

Paramètres

Paramètre Description
container Conteneur à partir duquel retourner un élément.
Numéro Position de l’élément à retourner. Spécifiez 1 pour obtenir le premier élément. Un numéro de position non valide, tel que -3, 0 ou un nombre supérieur à la longueur du conteneur, peut entraîner des erreurs imprévisibles.

Valeur renvoyée

Élément du conteneur à la position spécifiée par le paramètre nombre . La fonction conPeek convertit automatiquement l’élément peek en type de retour attendu. Les chaînes peuvent convertir automatiquement en entiers et en nombres réels, et les nombres réels et les nombres réels peuvent être convertis en chaînes.

Example

static void main(Args _args)
{
    container cnI, cnJ;
    int i, j;
    anytype aty;
    
    info("container cnI ...");
    cnI = ["itemBlue", "itemYellow"];

    for (i=1; i <= conLen(cnI); i++)
    {
        aty = conPeek(cnI, i);
        info(int2str(i) + " :  " + aty);
    }

    info("container cnJ ...");
    cnJ = conIns(cnI, 2, "ItemInserted");

    for (j=1; j <= conLen(cnJ); j++)
    {
        aty = conPeek(cnJ, j);
        info(int2str(j) + " :  " + aty);
    }
}
/***  Output pasted from InfoLog ...
Message (10:20:03 am)
container cnI ...
1 :  itemBlue
2 :  itemYellow
container cnJ ...
1 :  itemBlue
2 :  ItemInserted
3 :  itemYellow
***/

conPoke

Modifie un conteneur en remplaçant un ou plusieurs des éléments existants.

Syntaxe

container conPoke(container container, int start, anytype element, ...)

Paramètres

Paramètre Description
container Conteneur à modifier.
start Position du premier élément à remplacer.
element Un ou plusieurs éléments à remplacer, séparés par des virgules.

Valeur renvoyée

Nouveau conteneur qui inclut les nouveaux éléments.

Remarques

Le premier élément du conteneur est spécifié par le nombre 1.

Example

static void conPokeExample(Args _arg)
{
    container c1 = ["item1", "item2", "item3"];
    container c2;
    int i;

    void conPrint(container c)
    {
        for (i = 1 ; i <= conLen(c) ; i++)
        {
            print conPeek(c, i);
        }
    }

    conPrint(c1);
    c2 = conPoke(c1, 2, "PokedItem");
    print "";
    conPrint(c2);
}