En C++, est-il possible de définir un ordre de tri pour les pointeurs vers les fonctions membres? Il semble que l'opérateur < est indéfini. En outre, il est illégal de lancer pour annuler *.C++ comparaison de pointeurs de fonction membres
class A
{
public:
void Test1(){}
void Test2(){}
};
int main()
{
void (A::* const one)() = &A::Test1;
void (A::* const two)() = &A::Test2;
bool equal = one == two; //Equality works fine.
bool less = one < two; //Less than doesn't.
return 0;
}
Merci!
Qu'essayez-vous d'accomplir? –
J'aimerais pouvoir stocker ces pointeurs dans des ensembles ou des cartes. Ils exigent tous deux qu'un ordre de tri soit défini. – Imbue
Comment dangereux ferait memcmp ((void *) & un, (void *) & two, sizeof (un)); être? – Imbue