4 Stimmen

Functor, der eine Funktion nach der Dereferenzierung aufruft?

Gibt es einen kleinen Funktor im C++-Standard oder in Boost, der einen anderen Funktor umschließt, aber einen Zeiger dereferenziert, bevor er diesen Funktor aufruft?

Ich denke da an etwas in der Art:

template<class F>
struct DerefCmp {
  template<class T>
  bool operator()(T* v) const {
    return F(*v);
  }
};

Ich würde es zum Beispiel in einem Container mit Zeigern verwenden, wo ich nach Wert vergleichen möchte:

std::set<int*, DerefCmp< std::equal<int> > > s;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X