Паттерн: Посетитель (Visitor)
Фрагмент: итератор для доступа к элементам [C++]
  1. template <class Item>
  2. class Iterator {
  3. // ...
  4. Item CurrentltemO const;
  5. };