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

C++ Discussion :

Heritage et partage des fonctions


Sujet :

C++

  1. #21
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Points : 1 053
    Points
    1 053
    Par défaut
    Essaie les auto_ptr, ils sont justement fait pour ca. Quand aux réfèrences, comme je l'ai dit elles ne se suffisent pas à elles-mêmes pour résoudre les problèmes d'héritage, il faut bien pouvoir gérer le cycle de vie de tes objets.
    Citation Envoyé par Swoög
    En effet.. il faudra demander à un modérateur de couper le topic demain lol
    J'avoue, le manque de sommeil nuit gravement à la santé mentale
    Vais penser à aller me coucher moi.

  2. #22
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Citation Envoyé par zais_ethael
    Pas vraiment.
    Si tu utilises une réference d'un objet A dans un objet B, l'objet réferencé doit bien exister quelque part, probablement dans un objet C. Si tu détruits l'objet C mais pas le B, la réfèrence contenue dans B devient invalide. Il faut donc conserver l'objet A exclusivement dans l'objet B, soit par valeur (ne permet pas l'héritage) soit par pointeur (en détruisant l'objet pointé dans le destructeur de B --> auto_ptr++).
    Avec un pointeur, c'est tout aussi peu valide, si l'objet C est détruit, normalement l'objet interne pointé aussi...

  3. #23
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 43
    Points : 25
    Points
    25
    Par défaut
    Ok merci

    Malheuresement je n'ai pas codé les classes meres donc je doit faire avec.
    Je vais essayer ce que vous me proposez.

  4. #24
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    ???
    La première chose à faire est le codage des classes mères !

  5. #25
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Points : 1 053
    Points
    1 053
    Par défaut
    Citation Envoyé par Miles
    Avec un pointeur, c'est tout aussi peu valide, si l'objet C est détruit, normalement l'objet interne pointé aussi...
    C'est exactement ce que je dis. Idéalement un même objet ne peut être contenu que dans un seul objet à la fois. Ou alors on a une gestion des cycles de vie impecable et très localisée.
    Mais de toutes facons un objet ne peut pas être désigné que par des réfèrences, il doit forcément être présent à un endroit précis soit par valeur soit par pointeur (deuxième solution indispensable si on veut faire de l'héritage).

  6. #26
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Donc on se comprend bien
    Solution qui marche aussi bien : les smart pointers de Boost

  7. #27
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Points : 1 053
    Points
    1 053
    Par défaut
    Et ouep.
    Par contre je trouve aussi l'auto_ptr très utile (les shared_ptr c'est bien joli mais je préfère les utiliser uniquement quand c'est nécessaire). Le plus utile dans boost, je trouve, sont les collections de pointeurs.

  8. #28
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    J'aime aussi bien les auto_ptr, mais les ppointeurs de boost sont plus adaptés - à la place de l'auto_ptr prendre le scoped_ptr par ex -
    C'est quoi ces collections de pointeurs ?

  9. #29
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Points : 1 053
    Points
    1 053
    Par défaut
    Les pointer containers comme ils disent. C'est des trucs qui calquent le principe des containers de la stl mais utilisent des pointeurs au lieu de stocker par valeur, ils sont pas mal foutus pour faire des collections d'objets.

  10. #30
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Faudra que je regarde de plus près, merci pour l'indication

Discussions similaires

  1. [XL-2007] Liaison des fonctions - macro complémentaires - partage de fichier Excel
    Par corentinBEG dans le forum Conception
    Réponses: 3
    Dernier message: 15/01/2015, 02h09
  2. Réponses: 9
    Dernier message: 22/10/2013, 14h50
  3. Réponses: 3
    Dernier message: 21/05/2013, 11h27
  4. partager des fonctions entre pages
    Par mapmip dans le forum Langage
    Réponses: 2
    Dernier message: 27/08/2012, 11h23
  5. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 17h19

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