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 :

redefinition operateur


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    228
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 228
    Par défaut redefinition operateur
    bonjour,
    je fais une classe vecteur et je dois redefinir des opérateurs. Jusque là pas de probleme mais on me demande de redefinir l'operateur * par une fonction donc je fais la déclaration dans le point h suivante : Vecteur& operateur* (const Vecteur&, const Vecteur&); Mais il n'aime pas du tout cette déclaration. Pourquoi ? telle est la question...

    merci par avance.

  2. #2
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    L'opérateur doit prendre un paramètre je pense, le second étant l'objet "this".

  3. #3
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    Citation Envoyé par seriousme
    L'opérateur doit prendre un paramètre je pense, le second étant l'objet "this".

    Il y a deux façons de redéfinir un opérateur (binaire ou unaire) :
    par une fonction membre, dans ce cas, l'instance en cours (*this) est une des opérande (la seule opérande pour un opérateur unaire, l'opérande gauche pour un opérateur binaire) et l'autre opérande et le paramètre de la fonction.

    une fonction externe à la fonction (le plus souvent amie), dans ce cas, le premier paramètre est l'opérande gauche, et le second l'opérande droite (dans le cas d'un opérateur binaire bien sûr)

    ensuite, on pourrait certainement t'aider plus si on avait le message d'erreur...
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  4. #4
    Membre confirmé Avatar de b Oo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 179
    Par défaut
    Salut,
    je dirais que l'erreur vient peut-etre du fait que tu renvoies une référence sur un objet qui est détruit à la fin de ta fonction d'où un message d'erreur.

    Bonne journée.

    b Oo

  5. #5
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    Citation Envoyé par b Oo
    Salut,
    je dirais que l'erreur vient peut-etre du fait que tu renvoies une référence sur un objet qui est détruit à la fin de ta fonction d'où un message d'erreur.

    Bonne journée.

    b Oo
    exacte, voilà un point qu'on avait pas remarqué...

    En fait, sans autre informations que "il aime pas" ni le contexte on peut te trouver toutes les erreurs du monde...
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  6. #6
    Membre émérite
    Inscrit en
    Juillet 2005
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 512
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Vecteur operateur* (const Vecteur&);
    Déclaré comme ceci serait peut-être suffisant.

Discussions similaires

  1. Réponses: 5
    Dernier message: 23/11/2008, 19h26
  2. Redefinition Operateur Class
    Par steliseb dans le forum Windows Forms
    Réponses: 9
    Dernier message: 29/01/2008, 11h24
  3. operateur de condition
    Par Jean-Matt dans le forum Langage SQL
    Réponses: 4
    Dernier message: 01/12/2004, 15h56
  4. [langage] opérateur booleen
    Par louisis dans le forum Langage
    Réponses: 4
    Dernier message: 30/06/2004, 16h12
  5. [langage] l'operateur tr///
    Par March' dans le forum Langage
    Réponses: 4
    Dernier message: 03/03/2003, 21h57

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