3Fermer5
Kevin KoflerLe 19/11/2007 à 13:00
Et qu'est-ce que ça gagne par rapport à:
foreach (Node *b, db.noeuds) {
  if (b->neighbors()==3) {
    ...
  }
}

qu'on peut avoir avec du C++ + Qt avec juste une classe pour les graphes (qui doit sûrement déjà exister quelque part d'ailleurs)?

Si c'est le fait que la liste est préfiltrée avant le foreach, ben, on peut avoir ça aussi:
template <typename T> QList<T> filterList (const QList<T> &list, bool (*filterFunc)(const T &item))
{
  QList<T> result;
  foreach (const T &item, list) {
    if (filterFunc(item)) result.append(item);
  }
  return result;
}


Ou alors on peut faire un itérateur qui filtre au moment où il est parcouru aussi, mais je n'ai pas envie de le coder maintenant. wink

Bref, je ne vois pas qu'est-ce qui n'est pas déjà faisable en C++ dans tout ça.