Я прочитал документацию по 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);
}
}
Может быть, кто-нибудь может дать мне конкретный пример того, как это должно выглядеть / работать?