Partager via


Comment : tester l'égalité

Mise à jour : novembre 2007

Dans l'exemple suivant, un test de l'égalité utilisant les Extensions managées pour C++ se base sur les éléments désignés par les pointeurs.

Pour plus d'informations, consultez Modifications avec rupture dans le compilateur Visual C++ 2005.

Exemple

// mcppv2_equality_test.cpp
// compile with: /clr:oldSyntax /LD
using namespace System;

bool Test1() {
   String * str1 = S"test";
   String * str2 = S"test";
   return (str1 == str2);
}

Le code IL de ce programme indique que la valeur de retour est implémentée avec cette instruction :

  IL_0012:  ceq

qui compare les adresses des deux objets String.

Utilisation de la nouvelle syntaxe :

// mcppv2_equality_test_2.cpp
// compile with: /clr /LD
using namespace System;

bool Test1() {
   String ^ str1 = "test";
   String ^ str2 = "test";
   return (str1 == str2);
}

Le code IL de ce programme indique que la valeur de retour est implémentée avec un appel à op_Equality.

  IL_0012:  call       bool [mscorlib]System.String::op_Equality(string,
                                                                 string)

Voir aussi

Autres ressources

Types managés