Je voudrais créer une méthode d'extension de somme sûre qui aurait la même syntaxe que la somme normale.Comment créeriez-vous une extension IList de sécurité int sum?
Ce serait la syntaxe que je voudrais utiliser:
result = Allocations.SumIntSafe(all => all.Cost);
J'utilise le Int.Maxvalue
comme une valeur de pénalité dans mes opérations et deux Int.MaxValue
résumé renvoie un ensemble Int.Maxvalue
.
Ceci est ma fonction d'ajouter:
public static int PenaltySum(int a, int b)
{
return (int.MaxValue - a < b) ? int.MaxValue : a + b;
}
Toutes les idées?
EDIT:
Je voudrais utiliser cette fonction sur les collections génériques d'objets qui ont la valeur à résumer dans différentes propriétés:
-à-dire
all.SumInt32Safe(all => all.cost);
days.SumInt32Safe(day => day.penalty);
Êtes-vous satisfait IList au lieu de IList non générique? –