[R] Supprimer tous les éléments d'un tableau

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
kalixe
Niveau 3
Niveau 3
Messages : 40
Enregistré le : mer. 02 déc. 2009 12:06
Status : Hors ligne

[R] Supprimer tous les éléments d'un tableau

#1

Message par kalixe »

Bonjour, J'ai un tableau 1D et j'aimerais supprimer tous les éléments (une centaine) du tableau.

Après de nombreuses recherches je n'ai trouver qu'une fonction mais qui supprime dans un tableau mais ne remplit pas le rôle souhaiter : _ArrayDelete, ce qui demanderai de boucler le tableau et de supprimer tous les élements un par un, ce qui n'est pas une solution mais juste du bidouillage.

Quelqu'un a t il une solution acceptable ?
Modifié en dernier par kalixe le jeu. 29 avr. 2010 06:40, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Supprimer tous les éléments d'un tableau

#2

Message par Tlem »

Re-déclarez tout simplement le tableau. ;)

Code : Tout sélectionner

Dim $aTableau
ou si vous voulez garder les dimensions :

Code : Tout sélectionner

Dim $aTableau[100]
Ou encore

Code : Tout sélectionner

Dim $aTableau[Ubound($aTableau)]
La dernière ligne de code est une astuce pour garder exactement la même dimension. ;)
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
kalixe
Niveau 3
Niveau 3
Messages : 40
Enregistré le : mer. 02 déc. 2009 12:06
Status : Hors ligne

Re: [..] Supprimer tous les éléments d'un tableau

#3

Message par kalixe »

Merci Thierry effectivement ca marche nickel ! :wink:

Si ce n'est que je ne déclare jamais mes tableau par une valeur autre que 1 car je ne connais pas la taille réelle du tableau et la remplir par une taille fixe me dérange énormément de devoir laisser un grand nombre de trous dans le tableau en conséquence je ne déclarre que des tableaux de taille minimale Dim $aTableau[1] et j'ajoute en agrandissant le tableau avec _arrayAdd, je ne sais pas si c'est une bonne méthode, je n'ai pas comparé en terme de performance ce que ca donne, peut être quelqu'un fait la comparaison ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Supprimer tous les éléments d'un tableau

#4

Message par Tlem »

Vous pouvez faire comme vous le sentez, cela n'a pas d'importance, l'essentiel c'est que vous arriviez au résultat escompté. ;)

Si vous connaissez approximativement la taille du tableau et en fonction de comment vous gérez les éléments, le fait de déclarer à l'avance une dimension, même plus grande que ce dont vous avez besoin peut permettre de gagner 'quelques ms', mais rien de bien méchant si votre tableau reste dans des valeurs raisonnables.
Par contre si le tableau venait à être de taille conséquente, alors le gain sera visible en terme de performance, surtout si vous devez utiliser la fonction Redim. :mrgreen:
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre