class Foo
{
public List<float> Data { get ; set ; } // list of numbers
private float Total { get ; set ; } // Contains sum of numbers in Data
// Constructors and other stuff.
}
Мой код, который использует этот класс, продолжает изменять Data
, поэтому я хочу увидеть соответствующие изменения и в Total
.
Я не хочу добавлять функцию, которая пересчитывает Total
к коду, который модифицирует Data
.
Пример:
Foo f = new Foo(); // Total = 0
f.Data.Add(10); // Total = 10
f.Data.Add(30); // Total = 40
f[1] = 40; // Total = 50
// etc
Итак, каково решение этой проблемы?