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 :

Surcharger operator== pour comparaison


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 116
    Par défaut Surcharger operator== pour comparaison
    Bonjour à tous,

    Je vous explique mon soucis : je désire comparer les valeurs d'un tableau à une valeur précise.
    Cette valeur c'est VIDE. Donc, quand j'utilise '==', le compilo me marque une erreur.
    J'ai recherché sur le net et donc cette erreur semble provenir du fait que je cherche à comparer quelque chose de NULL et qu'il faut surcharger l'operator.

    J'aimerais donc savoir comment on fait.

    Merci d'avance .

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 551
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    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 551
    Par défaut
    Bonjour,

    que voulez-vous dire par VIDE ?
    quel est le type des éléments du tableau ?
    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
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 116
    Par défaut
    VIDE fait parti d'une énumération

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    enum attribut{RED,BLUE,WHITE,ETOILE,VIDE}

    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    switch (att)
    		 {
    		 case RED : cout<<'R';
    		 	 break;
    		 case BLUE : cout<<'B';
    		 	 break;
    		 case WHITE : cout<<'W';
    		 	 break;
    		 case ETOILE : cout<<'*';
    		 	 break;
    		 case VIDE : cout<<' ';
    		 	 break;
    		 }

    Et le tableau, c'est un tableau d' "ELEMENT" composé de :
    Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    attribut att; 
    orientation orient_;

    C'est lorsque que je cherche à faire ça par ex : que j'ai une erreur

  4. #4
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 551
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    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 551
    Par défaut
    est-ce que vous vous rendez compte que ce que vous dites est incompressible et inutilisable ?

    dans le premier post vos nous parlez de VIDE sans nous dire que c'est une valeur d'enum et et d'un tableau sans nous dire que ces élément sont du type de cette enum

    dans la précédente réponse vous nous dites que vous avez att de type attribut et orient_ de type orientation (on ne sait pas de quoi il s'agit), et cela de façon complètement inutile car ensuite ils ne sont pas utilisés puisque le problème concerne en fait t[i ][j ] alors qu'on ne sait rien de t

    comment voulez vous qu'on vous aide dans ces conditions ?
    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

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2010
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 116
    Par défaut
    t[i][j] est un tableau bidimensionnel comme vous avez sûrement du le remarquer.
    A part ça je ne vois pas quoi rajouter .

  6. #6
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 551
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    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 551
    Par défaut
    vraiment ?

    vous auriez pu par exemple donner
    • le message d'erreur
    • les déclarations de type
    • la déclaration de t


    en regardant de nouveau je pense comprendre que t est de type ELEMENT qui lui même est une classe/structure dont un des attributs est de type attribut (en passant c'est vraiment un très mauvais nom de type)

    bref vous comparez un ELEMENT à un attribut et vous vous étonnez que le compilateur proteste ?
    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

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

Discussions similaires

  1. problème surcharge operator+ (UNIX)
    Par richard_sraing dans le forum Linux
    Réponses: 9
    Dernier message: 01/12/2006, 20h41
  2. Réponses: 21
    Dernier message: 04/05/2006, 11h09
  3. [Pb de débutant, et encore] surcharge operator =
    Par 10_GOTO_10 dans le forum C++Builder
    Réponses: 5
    Dernier message: 11/01/2006, 02h30
  4. Namespace et surcharge operator new/delete
    Par ZeLegolas dans le forum C++
    Réponses: 11
    Dernier message: 26/07/2005, 13h55
  5. [TListColumn] Comment le surcharger notemment pour l'IDE ?
    Par phplive dans le forum Composants VCL
    Réponses: 14
    Dernier message: 25/05/2005, 16h44

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