Inclure un tableau dans une classe

Résolu
_Fabien Messages postés 119 Date d'inscription vendredi 17 novembre 2006 Statut Membre Dernière intervention 28 avril 2008 - 31 janv. 2007 à 10:42
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 - 2 févr. 2007 à 12:16
Bonjour,

J'aimerais savoir comment fait-on pour inclure un tableau dans une bibliothèque de classe. J'ai trouvé une solution qui marche, mais qui me semble du domaine du bricolage :

Public Class ClassA



Private _num_id As Byte
Private _nom As String
Private _nb_villes as Byte
Public t_villes() As ville





Public Property num_id () As Byte
  Get
   return _num_id
  End Get
  Set (ByVal value As Byte)
   If value >0 Then
     _num_id = value
   Else
     throw (new Exception ("Valeur négative !"))
   End If
  End Set
End Property
(etc)

Public Sub New (ByVal num_id As Byte, ByVal nom As String, byval nb_villes as Byte)
  Me._num_id = num_id
  Me._nom = nom
  Me._nb_villes = nb_villes
  ReDim t_villes(Me._nb_villes)
End Sub

End Class



Voici ce que j'aimerais, mais ça ne marche pas :

Private _num_id As Byte
Private _nom As String
Private _nb_villes as Byte
Private _t_villes() As ville

(...)

' Plante !
Public Property t_villes() As Ville
  Get
(...)
  End Get
  Set (ByVal value() As Ville)
(...)
  End Set
End Property

Public Sub New (ByVal num_id As Byte, ByVal nom As String, byval nb_villes as Byte, byval t_villes as Ville)
  Me._num_id = num_id
  Me._nom = nom
  Me._nb_villes = nb_villes
  Array.copy (Me._t_villes, t_villes, nb_villes)
End Sub

Voilà !

3 réponses

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
31 janv. 2007 à 12:10
Bonjour,
Ce n'est pas du tout du bricolage, ce que tu fais est correct.
Néanmois si tu veux garder ta variable _t_villes privée tu peux utiliser une méthode qui recoit un tableau de Ville.

Par exemple:
public sub GetVilles(tab as Ville())
   _t_villes=tab
end sub
3
_Fabien Messages postés 119 Date d'inscription vendredi 17 novembre 2006 Statut Membre Dernière intervention 28 avril 2008
2 févr. 2007 à 12:10
Donc si j'ai bien compris, avec les tableaux, pas de get, ni de set : faut passer par une méthode comme tu me l'as montré. Ok, c'est noté.

Merci !
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
2 févr. 2007 à 12:16
Rien ne t'empeche d'avoir une propriété d'un tableau quelquonque.
Quand tu dis que cela plante quand tu mets en place une telle propriété, quel message d'erreur as-tu ?
0
Rejoignez-nous