|
liages divers: msg#00026lang.ada.france
priorité faible données du problème : generic type donneesBranches is private; type donneesNoeuds is private; type TabDonneesBranches is array (Positive range <>) of donneesBranches; with function "<"(db1 : donneesBranches; db2 : donneesBranches) return boolean; donneeNoeudParDefaut:donneesNoeuds; package arbres is type arbre is private; procedure clear (a : in out arbre); generic with procedure modifier (n : in out donneesNoeuds); procedure modifierNoeud (a : in out arbre; c : in TabDonneesBranches); private end arbres; with arbres; pragma Elaborate_All (arbres); package dictionnaires is type dictionnaire is private; procedure clear (d : in out dictionnaire); procedure ajouter (d : in out dictionnaire; mot : in String); private package dico is new arbres(Character, Natural, String, "<", 0); use dico; type dictionnaire is new arbre; end dictionnaires; 1 ere chose : dictionnaire a une procedure clear (dans la partie publique de dictionnaires), arbre aussi, ce qui fait que dictionnaire a récupéré le clear de arbre, dans la partie privé de dictionnaires mais ça ne suffit pas comment faire ce liage ? 2 eme chose : package body dictionnaires is procedure ajouter (d : in out dictionnaire; mot : in String) is procedure inc (nbMot : in out Natural) is begin nbMot:=nbMot+1; end inc; procedure incNoeud is new modifierNoeud(inc); begin incNoeud(arbre(d),mot); end ajouter; end dictionnaires; au moment de faire new modifierNoeud(inc); , peut on choisir le modifierNoeud de dictionnaire, plutôt que celui de arbre ? vu qu'ils ont tous les 2 cette procédure et que ce sont des types incompatibles sans conversion explicite parce que ça m'agace de devoir faire cette conversion explicite à chaque fois que j'utilise une procédure générique : incNoeud(arbre(d),mot); _______________________________________________ Site WWW de l'association Ada-France: http://www.ada-france.org/ Ada-France@xxxxxxxxxxxxxx http://www.ada-france.org/mailman/listinfo/ada-france |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Spécification ASIS: 00026, Laurent Guerby |
|---|---|
| Next by Date: | Re: Spécification ASIS: 00026, Dominique Canazzi |
| Previous by Thread: | la décomposition en package empêche certaines choses circulairesi: 00026, Thomas De Contes |
| Next by Thread: | Re: liages divers: 00026, Xavier . Nicollin |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |