Initialisation d'une structure

Résolu
dmphenv Messages postés 8 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 7 décembre 2012 - 21 oct. 2008 à 11:34
dmphenv Messages postés 8 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 7 décembre 2012 - 21 oct. 2008 à 17:14
Bonjour,

Je commence à travailler en Visual Basic sous Microsoft Visual Studio 2008
et j'ai un problème concernant l'initialisation d'une structure du type
Structure personne
  dim prenom as string
  dim nom as as string
  dim age as integer
End Structure

Comment l'initialiser avec par exemples les 2 éléments suivant :
Jean Dupont 24
et Jacques Durant 35

Merci
GG
 

6 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
21 oct. 2008 à 13:50
Bonjour et bienvenue chez les vbéistes.Net

------------------------------------
Tu dois surcharger le contructeur de la structure personne de la manière suivante:

Structure Personne
   Public prenom as string
   Public nom as string
   Public age as integer

   Public Sub New(Byval n as string, Byval p as string, Byval a as integer)
      prenom = p
      nom = n
      age = a
   End Sub
End Structure

Et l'utiliser de la fonction suivante:
Dim UnePersonne as new personne("Dupont","Jean",24)

--------------------------------------------------------------
Ou suivant ton besoin tu peux te passer d'une structure et utiliser les types anonymes (nouveauté de vb2008):
Dim UnePersonne = new with {.Nom="Durant", .Prenom="Jacques", .Age=35}

Voila à toi de jouer maintenant
++
3
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
21 oct. 2008 à 13:40
Vous êtes ici : Thèmes / [forum-VISUAL-BASIC_1.aspx Visual Basic 6] /
déplacé vers VB.NET
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
21 oct. 2008 à 13:58
Bonjour,
est ce si compliqué ??
Dim

jed
AsNew personnejed.prenom "Jean"jed.nom

"Dupont"jed.age = 24

Dim Jad
AsNew personneJad.prenom "Jacques"Jad.nom

"Durant"Jad.age = 35

a+
0
dmphenv Messages postés 8 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 7 décembre 2012
21 oct. 2008 à 15:33
Merci à Willi et Gilardg pour ces explications que je connaissais déjà un peu. En fait je me rends compte que je me suis mal exprimé ...

Je désirerai créer un tableau de 2 éléments du type de la structure, qqchose comme :
Dim tab() as personne

et surtout l'initialiser avec les 2 éléments cités plus haut.
Cela devrait ressembler à qqchose comme :
Dim tab() as personne = {{"jean","dupont",24}, {"jacques","durand",35}}
mais selon la position des { } , et autres guillemets il y a toujours une erreur qui me bloque.

Merci
GG
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
21 oct. 2008 à 16:25
C'est presque cela je reprend juste la déclaration de ton tableau.

dim tab as personne() = new personne(){new personne("jean","dupont",24),new personne("jacques","durant",35)}

dans les {} ont créé 2 nouveaux objets personnes de cette facon ci-dessus car nous avons surchargé ton constructeur new.
++
0
dmphenv Messages postés 8 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 7 décembre 2012
21 oct. 2008 à 17:14
Super ça marche.
Merci à toi.
GG
0
Rejoignez-nous