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 :

methode et surcharge ?


Sujet :

C++

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Par défaut methode et surcharge ?
    hello

    je vai essaye d'expliquer en me basant sur le reseau avec iptables (sous linux) pour faire des methode qui seron surchargée.(je fait abstraction de class {} afind de venir a ce qui nous interesse)

    Donc

    On sai que :
    on peux donner 2 type de paramttre en reseau(pour faire simple surtout):
    destination_machine_distante_source_port
    et:
    destination_machine_distante_destination_port

    donc on aurait:

    ma_methode_standart (destination_machine_distante_source_port)
    ensuite on devrai surcharger et sa donnerai:
    ma_methode_standart (destination_machine_distante_destination_port)

    on ce retrouve donc avec 1 seul paramettre, cepandant comment résoudre le probleme de la surcharge en gardant le même nom de la methode ,enfin si cela est possible ?


    :je resume:

    1 methode qui a 1 seul paramettre--surchage-bug-->meme methode meme nombre de paramettre mai avec une valeur differente. la signiature est identique donc sa plante.

    donc comment enfin si c est la bon solution .faire une surchage ?

    ou faut-il que je redonne un autre nom pour chaque methode ?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par défaut
    Hum, c'est pas clair. Car je peux vouloir appeler ta méthode deux fois sur le même port, et vouloir qu'un coup ça soit en source et l'autre en destination. Donc c'est bien deux méthodes différentes.

    Si c'est la même fonction, et que c'est le même type, tu peux faire du tag dispatching.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Par défaut
    Citation Envoyé par Goten Voir le message
    Hum, c'est pas clair. Car je peux vouloir appeler ta méthode deux fois sur le même port, et vouloir qu'un coup ça soit en source et l'autre en destination. Donc c'est bien deux méthodes différentes.

    Si c'est la même fonction, et que c'est le même type, tu peux faire du tag dispatching.
    oui appeler 2 fois la methode comme tu le dit. et oui les types son identiques. par contre pour ce qui est du tag dispatching je ne c'est pas c e que c'est

    Merci pour ta réponse

  4. #4
    Membre Expert
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    struct source_tag{};
    struct destination_tag{};
     
     
    void ma_methode_standart (int port, source_tag)
    void ma_methode_standart (int port, destination_tag).
    http://www.boost.org/community/gener...ag_dispatching

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 412
    Par défaut
    Citation Envoyé par Goten Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    struct source_tag{};
    struct destination_tag{};
     
     
    void ma_methode_standart (int port, source_tag)
    void ma_methode_standart (int port, destination_tag).
    http://www.boost.org/community/gener...ag_dispatching
    interessant, bon mon anglait est trop mauvais pour voir claire. simplement une petie question ce pose.

    une structure est public, il est donc a mon avis très mauvais de l'utiliser. mai effectivment sa permet de contourner le souci dans le cas present.

Discussions similaires

  1. Class et methodes virtuelles, surcharge
    Par gloubi dans le forum Langage
    Réponses: 3
    Dernier message: 14/03/2008, 01h02
  2. Réponses: 2
    Dernier message: 04/06/2006, 21h11
  3. [Deb] Syntax surcharge de methode
    Par Marc_3 dans le forum Débuter
    Réponses: 2
    Dernier message: 10/01/2006, 15h11
  4. Réponses: 2
    Dernier message: 24/10/2005, 10h23
  5. Réponses: 5
    Dernier message: 10/03/2005, 17h41

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