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++/CLI Discussion :

Comparaison de 2 vector d'objet


Sujet :

C++/CLI

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2014
    Messages : 80
    Points : 46
    Points
    46
    Par défaut Comparaison de 2 vector d'objet
    Bonjour à tous,

    j'ai une petite question si quelqu'un peut m'aider s'il vous plait,merci d'avance.


    Supposons que j'ai 2 vector qui contiennent chacun 5 instances de la classe A, si je fais premier vector == le 2ème vector, la comparaison se fais sur base de quoi ? Donc je suppose qu'on va d 'abord vérifier que les 2 vector sont de taille égaux ce qui est le cas ici ensuite on va vérifier que vector1[0] == vector2[0] && vector1[1] == vector2[1] ainsi de suite ?
    Dans ce cas là la classe A doit surcharger l’opérateur ==?

  2. #2
    Expert éminent
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    Avril 2016
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 469
    Points : 6 102
    Points
    6 102
    Par défaut
    Oui.

    La réponse à ce genre de question se trouve dans la documentation de la STL, que tu peux consulter, par exemple, ici : http://www.cplusplus.com/reference/

    Dans ton exemple, la page qui t'intéresse est : http://www.cplusplus.com/reference/v...tor/operators/

    The equality comparison (operator==) is performed by first comparing sizes, and if they match, the elements are compared sequentially using operator==, stopping at the first mismatch (as if using algorithm equal).

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2014
    Messages : 80
    Points : 46
    Points
    46
    Par défaut
    rebonjour,

    en ce qui concerne les opérateur <,<=,>,>= , je supose que c'est la même chose que pour l'operateur = ?
    parce que ce qui est dis dans la doc j'ai du mal à comprendre.


    voici ce qui est dit dans la doc :

    Compares the contents of lhs and rhs lexicographically. The comparison is performed by a function equivalent to std::lexicographical_compare.

    Merci.

  4. #4
    Expert éminent
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    Avril 2016
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 469
    Points : 6 102
    Points
    6 102
    Par défaut
    L'opérateur < marche pareil que pour l'ordre alphabétique.

    Tant que vector1[k] n'est ni plus petit ni plus grand que vector2[k], on passe à l'itération suivante (on incrémente k), sauf si on est arrivé à la fin d'un des deux tableaux.
    Dès que vector1[k] < vector2[k], on arrête : vector1 est plus petit que vector2.
    Dès que vector2[k] < vector1[k], on arrête : vector1 n'est pas plus petit que vector2.
    Si on est arrivé à la fin d'un des deux tableaux, vector1 est plus petit que vector2 si et seulement si le nombre d'éléments de vector1 est plus petit que celui de vector2.

    Les opérateurs >, <= et >= sont définis en fonction de < :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    a >  b  ==    b < a
    a <= b  ==  !(b < a)
    a >= b  ==  !(a < b)

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2014
    Messages : 80
    Points : 46
    Points
    46
    Par défaut
    un grand merci

Discussions similaires

  1. Réponses: 10
    Dernier message: 10/10/2009, 18h39
  2. Vector d'objet et map de méthode.
    Par Mr Meuble dans le forum SL & STL
    Réponses: 2
    Dernier message: 06/06/2008, 11h41
  3. comparaison de deux séries d'objets
    Par Jasmine80 dans le forum Langage
    Réponses: 16
    Dernier message: 07/06/2007, 15h25
  4. [STD] Vector d'objets abstraits
    Par mister3957 dans le forum SL & STL
    Réponses: 3
    Dernier message: 20/02/2007, 10h58
  5. [Débutant]vector d'objet
    Par Clark dans le forum SL & STL
    Réponses: 6
    Dernier message: 19/05/2006, 17h56

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