Re: paramètres optionnels pour paquetag es génériques
Thomas De Contes <[email protected]>
| Newsgroups | gmane.comp.lang.ada.france |
|---|---|
| Message-ID | <[email protected]> |
Le 9 déc. 07 à 03:55, Thomas De Contes a écrit : > Au début, j'ai fait un paquetage qui ressemblait à ça : > > > generic > type item is private; > package tableaux is > > type tableauStatique is array (Positive range <>) of item; > > type tableau is private; > > private > type pointeurTableauStatique is access tableauStatique; > type tableau is record > pts : pointeurTableauStatique; > end record; > end tableaux; > > > > Et à un moment, j'ai eu besoin de fournir le type tableauStatique > > Alors j'ai fait : > > > generic > type item is private; > package tableaux is > > type tableauStatique is array (Positive range <>) of item; > > package pt is new tableaux2(item,tableauStatique); > > type tableau is new pt.tableau; > > end tableaux; > > > generic > type item is private; > type tableauStatique is array (Positive range <>) of item; > package tableaux2 is > > type tableau is private; > > > pour utiliser l'un où l'autre selon les besoins > Question : > > Est ce que c'est possible de faire 1 seul paquetage qui permette à la > fois : > à l'utilisateur de fournir tableauStatique, > ou de fournir tableauStatique à l'utilisateur, > selon ses besoins ? J'ai pas trouvé comment faire ça ... > J'ai vu qu'il y avait des nouveautés en ada 2005 du coté des > paramètres génériques, > Est ce que par hasard il y en aurait une qui permettrait ça ? :-) ... Mais j'ai trouvé qu'on peut faire des conversion explicites entre tableau1 et tableau2 quand ils sont construits de la même façon mais chacun de leur coté : type tableau1 is array (Positive range <>) of item; type tableau2 is array (Positive range <>) of item; Il me semblait avoir essayé en ada 95 et que ça n'avait pas marché ... C'est aussi une nouveauté d'ada 2005 ? :-) Alors c'est pas le nec + ultra, mais ça m'a quand même permis d'avoir un code un peu plus propre, et notamment d'avoir tableaux2 qui dépend de tableaux au lieu de l'inverse, ce qui me permet de le mettre comme paquetage enfant de tableaux :-) Une question plus ou moins dérivée : L'operateur "<" pour les tableaux, est ce qu'il existe automatiquement si et seulement si il existe pour le type item qu'on utilise pour fabriquer le tableau ? Si oui, est ce que c'est envisageable de faire des sous programmes, comme ça, qui existent ou pas en fonction de ce qui existe pour le type passé en paramètre générique d'un paquetage ? (C'est pas trop confus ?) -- j'agis contre l'assistanat, je travaille dans une SCOP ! _______________________________________________ Site WWW de l'association Ada-France: http://www.ada-france.org/ [email protected] http://www.ada-france.org/mailman/listinfo/ada-france