Bonjour,

En pleine révision, je m'interroge sur un corrigé.
Il s'agit de créer des méthodes d'extension mais je suis surpris par la manière dont la méthode suivante (qui a pour but de pouvoir appliquer la méthode ForEach à une liste et de renvoyer une liste) est déclarée:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
public static IEnumerable<T> ForEach<T>(this IEnumerable<T> list, Action<T> expr)
        {
            foreach (var item in list)
            {
                expr(item);
            }
            return list;
        }
Ma question est: pourquoi faut-il rajouter un <T> après public static IEnumerable<T> ForEach?

Je vous remercie vivement de répondre à ma question car je n'ai pas trouvé de réponse précise dans google...

Merci d'avance!