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

_Fabien
Messages postés
119
Date d'inscription
vendredi 17 novembre 2006
Dernière intervention
28 avril 2008
- 17 avril 2008 à 17:19 - Dernière réponse : NHenry
Messages postés
14295
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
12 novembre 2018
- 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 

Votre réponse

4 réponses

Meilleure réponse
Polack77
Messages postés
1100
Date d'inscription
mercredi 22 mars 2006
Dernière intervention
15 avril 2018
- 17 avril 2008 à 17:50
3
Merci
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"

Merci Polack77 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de Polack77
Meilleure réponse
jrivet
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Dernière intervention
6 avril 2012
- 17 avril 2008 à 18:13
3
Merci
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

Merci jrivet 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de jrivet
_Fabien
Messages postés
119
Date d'inscription
vendredi 17 novembre 2006
Dernière intervention
28 avril 2008
- 18 avril 2008 à 09:13
0
Merci
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
Messages postés
14295
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
12 novembre 2018
- 18 avril 2008 à 13:59
0
Merci
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.