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

patron itérateur : version de Gamma

template< typename T >
void add( Aggregate<T>& input, T value )
{
   Iterator<T>& iter = input.CreateIterator();
   for ( iter.First(); ! iter.IsDone(); iter.Next() )
      iter.CurrentItem() += value;
}