Les ARRAYS vous connaissez?

Résolu
klingfilm Messages postés 36 Date d'inscription mercredi 25 juillet 2007 Statut Membre Dernière intervention 23 août 2007 - 29 juil. 2007 à 07:17
PurBonheur Messages postés 66 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 7 octobre 2007 - 29 juil. 2007 à 17:27
Les ARRAYS vous connaissez?
Bonjour à tous, je profite d'en avoir marre de lire de l'info dont je ne pige rien pour vous poser 3 ou 4 questions de base sur l'utilisation des arrays. (Je suis en VB.net en passant)
Premièrement, peut-on appeler un array dans une fonction ou une subroutine sans avoir défini la longueur de ses dimensions?
 ex:
Dim JeSuisUnArray ( , ) as string

'et par la suite en le laissant vide et sans longueur

JeSuisUneFonction (JeSuisUnArray)

Deuxièmement pourriez-vous me dire la différence entre
Dim Blabla ( ) as string                  ET                  Dim Blabla as array = new array ()

Ensuite, quelle est la différence entre

....= new                                       ET                  as new

Et finalement, pourriez-vous me dire s'il est possible de vider un array de toutes ses valeurs en conservant la longeur de ses dimensions?

Merci d'aider un petit nouveau qui se développe des maux de têtes en DOTNET en ce moment.
(Dites-moi ça vous arrive de vou coucher et de voir les lignes de codes des fois ou je deviens gaga un peu...)

1 réponse

PurBonheur Messages postés 66 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 7 octobre 2007 1
29 juil. 2007 à 17:27
Salut,
<hr size= "2" width="100%" />
"peut-on appeler un array dans une fonction ou une subroutine sans avoir défini la longueur de ses dimensions?"
Oui, mais pourquoi faire ?
    Dim JeSuisUnArray ( , ) as string : Cette ligne céer une variable qui peux POTENTIELLEMENT faire référence à un tableau de chaine. Mais temps que cette variable n'est pas assignée à une instance d'un tableau de chaine, elle pointe vers 'Nothing'.
Donc  : JeSuisUneFonction (JeSuisUnArray) : Tu envois 'Nothing' à ta fonction.Par contre si tu fait :

Dim MonTableau(,) As String
Dim Tableau2(5, 5) As String
        Tableau2(0, 0) = "Bonjour"
        MonTableau = Tableau2
        MaFonction(MonTableau)

Alors tu envois une référence à MonTableau et Tableau2 à ta fonction.
<hr size="2" width="100%" />"Deuxièmement pourriez-vous me dire la différence entre
Dim Blabla ( ) as string                  ET                  Dim Blabla as array = new array ()"

La premiere syntaxe te donne une varaible de type tableau de chaine qui pointe vers 'Nothing'. La seconde syntaxe ne compile pas, il faut mettre  Dim Blabla As ArrayList = New ArrayList , tu obtiens alors une variable de type ArrayList, qui pointe vers une instance de la classe ArrayList, et qui est sensé être plus rapide qu'un tableau classique.
<hr size ="2" width="100%" />"Ensuite, quelle est la différence entre  ....= new   ET as new"

Tu a mis "=" à la place du "as" : c'est tout. C'est la même chose.
<hr size="2" width="100%" />"s'il est possible de vider un array de toutes ses valeurs en conservant la longeur "

  Oui :       Array.Clear(Tableau2, 0, 6)

A plus.
3
Rejoignez-nous