我需要存储一个对象的当前值及其以前的值。我想出了这样的事情:
struct TwoStepHistory<T>
{
private T _v0;
public T Value
{
get
{
return _v0;
}
set
{
OldValue = _v0;
_v0 = value;
}
}
public T OldValue { get; private set; }
}
但它看起来如此明显和简单,以至于我认为 BCL 或 dotnet 中的其他地方一定有一些东西在做同样的事情。不想重新发明一辆自行车,你知道。有谁知道类似的结构?
有一些评论是否可以用于引用类型,这里有一个例子,一切正常,不知道为什么人们会感到困惑。https://dotnetfiddle.net/BSm1Pz,带有目标对象突变的 v2:https : //dotnetfiddle.net/DGkAgv
相关分类