Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred
Bonjour, C'est normal, tu crois avoir 4 objets EntSor différents dans ton tableau alors que c'est toujours le même. Si tu viens du monde VB6 peut-être ne connais-tu pas la notion de pointeur ou d'adresse. Imagine que dans ton tableau tu places l'adresse mémoire de ton objet. Tu as donc bien 4 éléments de tableau mais il s'agit de 4 fois l'adresse du même objet EntSort. J'espère avoir été à peu près clair !
"Bernard Bourée" a écrit dans le message de news:
J'ai une classe EntSor définie (voir code ) avec une procédure Sub
Définit
qui définit plusieurs valeur de cette classe.
J'ai ensuite défini une Arraylist avec Dim colEntSor As New ArrayList()
le code suivant met la même série de valeur dans toute l'arraylist:
C'est à dire que la dernière ligne du code met les valeurs de cette ligne dans cahque élément de la collection.
Que se passe-t-il ?
Merci
Bernard
============================================= > Public Class EntSor
Private mNomVal As String
Private mNomUnit As String
Private mDonnées As Boolean
Private mValeur As Decimal
Public Property NomVal() As String
Get
Return mNomVal
End Get
Set(ByVal Value As String)
mNomVal = Value
End Set
End Property
Public Property NomUnit() As String
Get
Return mNomUnit
End Get
Set(ByVal Value As String)
mNomUnit = Value
End Set
End Property
Public Property Données() As Boolean
Get
Return mDonnées
End Get
Set(ByVal Value As Boolean)
mDonnées = Value
End Set
End Property
Public Property Valeur() As Decimal
Get
Return mValeur
End Get
Set(ByVal Value As Decimal)
mValeur = Value
End Set
End Property
Public Sub Définit(ByVal sNomVal As String, _
ByVal sNomunité As String, _
ByVal dVal As Decimal, _
ByVal bDonnées As Boolean)
With Me
.NomVal = sNomVal
.NomUnit = sNomunité
.Valeur = dVal
.Données = bDonnées
End With
End Sub
End Class
-- Bernard Bourée
Bonjour,
C'est normal, tu crois avoir 4 objets EntSor différents dans ton tableau
alors que c'est toujours le même.
Si tu viens du monde VB6 peut-être ne connais-tu pas la notion de pointeur
ou d'adresse.
Imagine que dans ton tableau tu places l'adresse mémoire de ton objet.
Tu as donc bien 4 éléments de tableau mais il s'agit de 4 fois l'adresse du
même objet EntSort.
J'espère avoir été à peu près clair !
"Bernard Bourée" <bernard@bouree.net> a écrit dans le message de news:
OCr3YKOuEHA.160@TK2MSFTNGP11.phx.gbl...
J'ai une classe EntSor définie (voir code ) avec une procédure Sub
Définit
qui définit plusieurs valeur de cette classe.
J'ai ensuite défini une Arraylist avec
Dim colEntSor As New ArrayList()
le code suivant met la même série de valeur dans toute l'arraylist:
Bonjour, C'est normal, tu crois avoir 4 objets EntSor différents dans ton tableau alors que c'est toujours le même. Si tu viens du monde VB6 peut-être ne connais-tu pas la notion de pointeur ou d'adresse. Imagine que dans ton tableau tu places l'adresse mémoire de ton objet. Tu as donc bien 4 éléments de tableau mais il s'agit de 4 fois l'adresse du même objet EntSort. J'espère avoir été à peu près clair !
"Bernard Bourée" a écrit dans le message de news:
J'ai une classe EntSor définie (voir code ) avec une procédure Sub
Définit
qui définit plusieurs valeur de cette classe.
J'ai ensuite défini une Arraylist avec Dim colEntSor As New ArrayList()
le code suivant met la même série de valeur dans toute l'arraylist:
C'est à dire que la dernière ligne du code met les valeurs de cette ligne dans cahque élément de la collection.
Que se passe-t-il ?
Merci
Bernard
============================================= > Public Class EntSor
Private mNomVal As String
Private mNomUnit As String
Private mDonnées As Boolean
Private mValeur As Decimal
Public Property NomVal() As String
Get
Return mNomVal
End Get
Set(ByVal Value As String)
mNomVal = Value
End Set
End Property
Public Property NomUnit() As String
Get
Return mNomUnit
End Get
Set(ByVal Value As String)
mNomUnit = Value
End Set
End Property
Public Property Données() As Boolean
Get
Return mDonnées
End Get
Set(ByVal Value As Boolean)
mDonnées = Value
End Set
End Property
Public Property Valeur() As Decimal
Get
Return mValeur
End Get
Set(ByVal Value As Decimal)
mValeur = Value
End Set
End Property
Public Sub Définit(ByVal sNomVal As String, _
ByVal sNomunité As String, _
ByVal dVal As Decimal, _
ByVal bDonnées As Boolean)
With Me
.NomVal = sNomVal
.NomUnit = sNomunité
.Valeur = dVal
.Données = bDonnées
End With
End Sub
End Class
-- Bernard Bourée
Bernard Bourée
Merci c'est très clair!
-- Bernard Bourée
"Fred" a écrit dans le message de news:
Bonjour, C'est normal, tu crois avoir 4 objets EntSor différents dans ton tableau alors que c'est toujours le même. Si tu viens du monde VB6 peut-être ne connais-tu pas la notion de pointeur ou d'adresse. Imagine que dans ton tableau tu places l'adresse mémoire de ton objet. Tu as donc bien 4 éléments de tableau mais il s'agit de 4 fois l'adresse
du
même objet EntSort. J'espère avoir été à peu près clair !
"Bernard Bourée" a écrit dans le message de news:
> J'ai une classe EntSor définie (voir code ) avec une procédure Sub Définit > qui définit plusieurs valeur de cette classe. > > J'ai ensuite défini une Arraylist avec > Dim colEntSor As New ArrayList() > > le code suivant met la même série de valeur dans toute l'arraylist: > > EntSor.Définit("PAAE", "bar", 0, True) : colEntSor.Add(EntSor) > > EntSor.Définit("TAAE", "°C", 0, True) : colEntSor.Add(EntSor) > > EntSor.Définit("QAAE", "kg/s", 0, True) : colEntSor.Add(EntSor) > > EntSor.Définit("XVAE", "%", 0, True) : colEntSor.Add(EntSor) > > C'est à dire que la dernière ligne du code met les valeurs de cette
ligne
> dans cahque élément de la collection. > > Que se passe-t-il ? > > > > Merci > > Bernard > > ============================================= > > > Public Class EntSor > > Private mNomVal As String > > Private mNomUnit As String > > Private mDonnées As Boolean > > Private mValeur As Decimal > > Public Property NomVal() As String > > Get > > Return mNomVal > > End Get > > Set(ByVal Value As String) > > mNomVal = Value > > End Set > > End Property > > Public Property NomUnit() As String > > Get > > Return mNomUnit > > End Get > > Set(ByVal Value As String) > > mNomUnit = Value > > End Set > > End Property > > Public Property Données() As Boolean > > Get > > Return mDonnées > > End Get > > Set(ByVal Value As Boolean) > > mDonnées = Value > > End Set > > End Property > > Public Property Valeur() As Decimal > > Get > > Return mValeur > > End Get > > Set(ByVal Value As Decimal) > > mValeur = Value > > End Set > > End Property > > Public Sub Définit(ByVal sNomVal As String, _ > > ByVal sNomunité As String, _ > > ByVal dVal As Decimal, _ > > ByVal bDonnées As Boolean) > > With Me > > .NomVal = sNomVal > > .NomUnit = sNomunité > > .Valeur = dVal > > .Données = bDonnées > > End With > > End Sub > > End Class > > > -- > Bernard Bourée > > >
Merci c'est très clair!
--
Bernard Bourée
bernard@bouree.net
"Fred" <no@spam.com> a écrit dans le message de
news:eZ9M0oRuEHA.348@tk2msftngp13.phx.gbl...
Bonjour,
C'est normal, tu crois avoir 4 objets EntSor différents dans ton tableau
alors que c'est toujours le même.
Si tu viens du monde VB6 peut-être ne connais-tu pas la notion de pointeur
ou d'adresse.
Imagine que dans ton tableau tu places l'adresse mémoire de ton objet.
Tu as donc bien 4 éléments de tableau mais il s'agit de 4 fois l'adresse
du
même objet EntSort.
J'espère avoir été à peu près clair !
"Bernard Bourée" <bernard@bouree.net> a écrit dans le message de news:
OCr3YKOuEHA.160@TK2MSFTNGP11.phx.gbl...
> J'ai une classe EntSor définie (voir code ) avec une procédure Sub
Définit
> qui définit plusieurs valeur de cette classe.
>
> J'ai ensuite défini une Arraylist avec
> Dim colEntSor As New ArrayList()
>
> le code suivant met la même série de valeur dans toute l'arraylist:
>
> EntSor.Définit("PAAE", "bar", 0, True) : colEntSor.Add(EntSor)
>
> EntSor.Définit("TAAE", "°C", 0, True) : colEntSor.Add(EntSor)
>
> EntSor.Définit("QAAE", "kg/s", 0, True) : colEntSor.Add(EntSor)
>
> EntSor.Définit("XVAE", "%", 0, True) : colEntSor.Add(EntSor)
>
> C'est à dire que la dernière ligne du code met les valeurs de cette
ligne
> dans cahque élément de la collection.
>
> Que se passe-t-il ?
>
>
>
> Merci
>
> Bernard
>
> ============================================= > >
> Public Class EntSor
>
> Private mNomVal As String
>
> Private mNomUnit As String
>
> Private mDonnées As Boolean
>
> Private mValeur As Decimal
>
> Public Property NomVal() As String
>
> Get
>
> Return mNomVal
>
> End Get
>
> Set(ByVal Value As String)
>
> mNomVal = Value
>
> End Set
>
> End Property
>
> Public Property NomUnit() As String
>
> Get
>
> Return mNomUnit
>
> End Get
>
> Set(ByVal Value As String)
>
> mNomUnit = Value
>
> End Set
>
> End Property
>
> Public Property Données() As Boolean
>
> Get
>
> Return mDonnées
>
> End Get
>
> Set(ByVal Value As Boolean)
>
> mDonnées = Value
>
> End Set
>
> End Property
>
> Public Property Valeur() As Decimal
>
> Get
>
> Return mValeur
>
> End Get
>
> Set(ByVal Value As Decimal)
>
> mValeur = Value
>
> End Set
>
> End Property
>
> Public Sub Définit(ByVal sNomVal As String, _
>
> ByVal sNomunité As String, _
>
> ByVal dVal As Decimal, _
>
> ByVal bDonnées As Boolean)
>
> With Me
>
> .NomVal = sNomVal
>
> .NomUnit = sNomunité
>
> .Valeur = dVal
>
> .Données = bDonnées
>
> End With
>
> End Sub
>
> End Class
>
>
> --
> Bernard Bourée
> bernard@bouree.net
>
>
Bonjour, C'est normal, tu crois avoir 4 objets EntSor différents dans ton tableau alors que c'est toujours le même. Si tu viens du monde VB6 peut-être ne connais-tu pas la notion de pointeur ou d'adresse. Imagine que dans ton tableau tu places l'adresse mémoire de ton objet. Tu as donc bien 4 éléments de tableau mais il s'agit de 4 fois l'adresse
du
même objet EntSort. J'espère avoir été à peu près clair !
"Bernard Bourée" a écrit dans le message de news:
> J'ai une classe EntSor définie (voir code ) avec une procédure Sub Définit > qui définit plusieurs valeur de cette classe. > > J'ai ensuite défini une Arraylist avec > Dim colEntSor As New ArrayList() > > le code suivant met la même série de valeur dans toute l'arraylist: > > EntSor.Définit("PAAE", "bar", 0, True) : colEntSor.Add(EntSor) > > EntSor.Définit("TAAE", "°C", 0, True) : colEntSor.Add(EntSor) > > EntSor.Définit("QAAE", "kg/s", 0, True) : colEntSor.Add(EntSor) > > EntSor.Définit("XVAE", "%", 0, True) : colEntSor.Add(EntSor) > > C'est à dire que la dernière ligne du code met les valeurs de cette
ligne
> dans cahque élément de la collection. > > Que se passe-t-il ? > > > > Merci > > Bernard > > ============================================= > > > Public Class EntSor > > Private mNomVal As String > > Private mNomUnit As String > > Private mDonnées As Boolean > > Private mValeur As Decimal > > Public Property NomVal() As String > > Get > > Return mNomVal > > End Get > > Set(ByVal Value As String) > > mNomVal = Value > > End Set > > End Property > > Public Property NomUnit() As String > > Get > > Return mNomUnit > > End Get > > Set(ByVal Value As String) > > mNomUnit = Value > > End Set > > End Property > > Public Property Données() As Boolean > > Get > > Return mDonnées > > End Get > > Set(ByVal Value As Boolean) > > mDonnées = Value > > End Set > > End Property > > Public Property Valeur() As Decimal > > Get > > Return mValeur > > End Get > > Set(ByVal Value As Decimal) > > mValeur = Value > > End Set > > End Property > > Public Sub Définit(ByVal sNomVal As String, _ > > ByVal sNomunité As String, _ > > ByVal dVal As Decimal, _ > > ByVal bDonnées As Boolean) > > With Me > > .NomVal = sNomVal > > .NomUnit = sNomunité > > .Valeur = dVal > > .Données = bDonnées > > End With > > End Sub > > End Class > > > -- > Bernard Bourée > > >