Какая польза от boost :: visit_each?

Я прочитал документацию по visit_each , но не могу понять, что именно он делает, а также его общее использование, если каждому пользователю приходится перегружать это в любом случае. Кто-нибудь хочет меня просветить?


Правка : Может быть, я просто сбит с толку, потому что ниже приводится весь контент , и я просто не вижу там никакой "магии", чтобы " посетить каждый подобъект ":

namespace boost {
  template
  inline void visit_each(Visitor& visitor, const T& t, long)
  {
    visitor(t);
  }

  template
  inline void visit_each(Visitor& visitor, const T& t)
  {
    visit_each(visitor, t, 0);
  }
}

Может быть, кто-нибудь может дать мне конкретный пример того, как это должно выглядеть / работать?

5
задан Joel Coehoorn 5 December 2011 в 20:57
поделиться