IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

BOUML Discussion :

Pb <<typedef>> class parametrée


Sujet :

BOUML

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Pb <<typedef>> class parametrée
    Bonjour, merci de cet excellent outil!

    Avec une class stéréotipée <<typedef>> j'essaie la déclaration suivante
    typedef boost::shared_ptr<TP> ptr_TP;

    Dans "Class dialog" le contenu du tab "Parameterized" est grisé dès qu'on choisi le stéréotype "typedef", alors que je m'attendais d'y rajouter le type "TP"

    C'est pas bien grave, je m'en sorte avec "boost::shared_ptr<TP>" dans le champ "base type" du tab UML, mais cela n'a pas l'air "propre".

    S'agît-il d'un bug ou bien c'est une fonctionnalité (mal comprise)?

    Merci

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 534
    Points : 6 723
    Points
    6 723
    Par défaut
    Bonjour,
    Citation Envoyé par bighty Voir le message
    Dans "Class dialog" le contenu du tab "Parameterized" est grisé dès qu'on choisi le stéréotype "typedef", alors que je m'attendais d'y rajouter le type "TP"
    un typedef ne peut pas être paramétré, une forme "template <....> typedef ..." n'est pas valide

    par contre un typedef peut définir des actuals/binds ... s'il hérite au moins d'une classe paramétrée

    Citation Envoyé par bighty Voir le message
    Avec une class stéréotipée <<typedef>> j'essaie la déclaration suivante
    typedef boost::shared_ptr<TP> ptr_TP;
    Donc, si la classe (sans doute marquée externe) boost::shared_ptr est connue comme étant une classe paramétrée (avec un paramètre formel, disont T) et que ptr_TP réalise celle-ci, alors l'onglet Instantiate apparait dans le dialogue de la classe ptr_TP et permet d'indiquer TP comme actual. La liaison T->TP apparait de plus dans les dialogues de classes (voir le diagramme dans cette discussion)

    Citation Envoyé par bighty Voir le message
    C'est pas bien grave, je m'en sorte avec "boost::shared_ptr<TP>" dans le champ "base type" du tab UML, mais cela n'a pas l'air "propre".
    (si boost::shared_ptr n'est pas dans le modèle) si TP est une classe du modèle il vaut mieux mettre le "base type" à TP et changer la définition du typedef en remplaçant ${type} par boost::shared_ptr<${type}>.
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Super, merci encore!
    j'ai retenu la première solution pour faire sans plus de soucis ce que je voulais au juste
    class TP : public Enit {
    public:
    typedef boost::shared_ptr<TP> ptr;
    ...
    };
    En plus cela m'explicite les dépendances et c'est bien pratique aussi.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Typedef dans une classe mère template
    Par Mat007 dans le forum Langage
    Réponses: 2
    Dernier message: 23/09/2009, 10h50
  2. Typedefs dans une classe template
    Par olivier1978 dans le forum Langage
    Réponses: 1
    Dernier message: 29/10/2007, 01h12
  3. typedef dans une class template
    Par yan dans le forum Langage
    Réponses: 2
    Dernier message: 01/10/2007, 10h43
  4. [Struts][classe Action]Mettre un objet en parametre (suite)
    Par julienOriano dans le forum Struts 1
    Réponses: 6
    Dernier message: 16/06/2004, 15h54
  5. Sortir un typedef d'une classe
    Par Theophil dans le forum C++Builder
    Réponses: 13
    Dernier message: 03/07/2002, 17h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo