Chaque fois que j'ai besoin de faire quelque chose de N fois à l'intérieur d'un algorithme à l'aide de C# j'écris ce code
for (int i = 0; i < N; i++)
{
...
}
L'étude de Ruby, j'ai appris à propos de la méthode des moments() qui peut être utilisé avec la même sémantique comme ceci
N.times do
...
end
Fragment de Code C# a l'air plus complexe et nous devons déclarer inutile variable - je.
J'ai essayé d'écrire une extension de la méthode qui retourne IEnumerable, mais je ne suis pas satisfait du résultat, car, encore une fois, je dois déclarer un cycle variable - je.
public static class IntExtender
{
public static IEnumerable Times(this int times)
{
for (int i = 0; i < times; i++)
yield return true;
}
}
...
foreach (var i in 5.Times())
{
...
}
Est-il possible à l'aide de quelques nouvelles de C# 3.0 fonctionnalités de langage pour faire de la N des temps de cycle plus élégant?