Set et pointeurs

Petit rappel pour quand je veut faire des tableaux associatifs ou des trousseaux de clées en C++ à partir de pointeurs.

template <typename T>
struct less_ptr : std::binary_function<T *, T *, bool>
{
        bool operator() (T * const & A,T * const & B) const
        {
                return (*A) < (*B);
        }
};

std::set<MObject *, less_ptr<MObject> > liste;

Il faut redéfinir la fonction de comparaison, pour dire que l'on utilise des pointeurs. L'objet cependant doit être less than comparable.

En gros, il doit implémenter ça: bool operator< (const MObject &) const; Mais ça peut être un type de base aussi.

Vus : 339
Publié par Yellowiscool : 33