Journée de travail du 24 février 2000 des GTs COOSI et SIMédia :
Programmation générique, composants et patrons de conception.
17

patron itérateur : version générique

template< typename A >
void add( A& input, typename A::value_type value )
{
   typename A::iterator_type& iter = input.CreateIterator();
   for ( iter.First(); ! iter.IsDone(); iter.Next() )
      iter.CurrentItem() += value;
}