Je pense à un nouveau facteur, mais je ne sais pas si le résultat final est tout simplement surpuissant. Actuellement, j'aiEst-LINQ dans cette situation surpuissance
IList<myobjecttypebase> m_items;
public int GetIncrementTotal()
{
int incrementTot;
foreach(myobjecttypebase x in m_items)
{ incrementTot += x.GetIncrement(); }
}
Serait-il exagéré et/ou moins efficace d'utiliser LINQ pour le ForEach
m_items.ToList().ForEach(x => incrementTot += x.GetIncrement());
Est-ce que le casting est une surcharge importante ici?
Merci pour la réponse complète Guffa. – Andrew
La "légère surcharge" ici est juste la différence entre l'appel d'un délégué et le code en ligne. À moins que la collection soit énorme, ou que vous additionniez beaucoup de collections en utilisant ceci comme base pour les choix de codage tombe dans le domaine de l'optimisation prématurée. N'apportez des modifications de ce type que si les tests de performances montrent que vous obtiendrez une amélioration significative de votre temps d'exécution total. – Richard