Comparer 2 objets contenant des valeurs identiques [Résolu]

_Fabien 119 Messages postés vendredi 17 novembre 2006Date d'inscription 28 avril 2008 Dernière intervention - 17 avril 2008 à 17:19 - Dernière réponse : NHenry 14129 Messages postés vendredi 14 mars 2003Date d'inscription 19 avril 2018 Dernière intervention
- 18 avril 2008 à 13:59
Bonjour,
Voici le code puis viendra la question :

' personne = (nom, prénom, âge)
dim objPersonne1 = new personne ("NAPHAR", "Henri", 34)
dim objPersonne2 = new personne ("NAPHAR", "Henri", 34)

J'aimerais savoir si il existe une commande qui puisse vérifier si les 2 objets ont les mêmes valeurs et non les mêmes références.

j'ai bien testé 3 trucs sans y croire :
1) if objPersonne1 is objPersonne2 --> false
2) msgbox(Equals (objPersonne1,objPersonne2)) --> renvoie false
3) msgbox(ReferenceEquals (objPersonne1,objPersonne2)) --> renvoie false

Et ça c'est bien confirmé : seules les références (adresses) sont comparées

D'avance, merci.
_____________________________________________________________
Coder et coder sont 2 choses différentes. La 1ère consiste à arriver au but coûte que coûte. La 2nde est de trouver la solution de manière élégante.
Afficher la suite 

4 réponses

Répondre au sujet
Polack77 1100 Messages postés mercredi 22 mars 2006Date d'inscription 15 avril 2018 Dernière intervention - 17 avril 2008 à 17:50
+3
Utile
Salut juste une idée en passant.
Tu pourais copier la valeur de la mémoire (en utilisant l'API copymemory) dans un type string (ATTENTION de définir la taille de ce string avant la copie) et comparer les deux string. Si elle sont égale c'est que les valeurs en mémoire sont identique.
Aucune idée si sa fonctionnera réellement mais je pense qu'il y à possibilité de faire un truc du genre

Amicalement
Pensez "Réponse acceptée"
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Polack77
jrivet 7401 Messages postés mercredi 23 avril 2003Date d'inscription 6 avril 2012 Dernière intervention - 17 avril 2008 à 18:13
+3
Utile
Salut,
En .NET il me semble qu'il est possible de surcharger l'opérateur =   non?
pour te permettre du coup de faire ce que tu souhaites.

<hr size ="2" width="100%" />@+: Ju£i?n
Pensez: Réponse
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jrivet
_Fabien 119 Messages postés vendredi 17 novembre 2006Date d'inscription 28 avril 2008 Dernière intervention - 18 avril 2008 à 09:13
0
Utile
Merci vous 2. J'aurais du penser que, comme chaque objet est différent, une méthode générique n'eu été pas possible.

_____________________________________________________________
Coder et coder sont 2 choses différentes. La 1ère consiste à arriver au but coûte que coûte. La 2nde est de trouver la solution de manière élégante.
Commenter la réponse de _Fabien
NHenry 14129 Messages postés vendredi 14 mars 2003Date d'inscription 19 avril 2018 Dernière intervention - 18 avril 2008 à 13:59
0
Utile
Bonjour

Possibilité de surcharger Equals aussi.

Le fer à souder a besoin d'une panne pour fonctionner.
VB (6, .NET1&2), C++, C#.Net1
Mon site
Commenter la réponse de NHenry

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.