好吧所以我想创建一个将改变数据类型值的泛型类.我想这样做的原因是我可以使用撤消和重做方法.我可以为我需要的每种值类型编写一个类.IE double,int ...但如果我可以创建一个通用类来做这件事会容易得多.
这就是我所拥有的
class CommandChangeDouble : Command
{
double _previous;
double _new;
double* _objectRef;
public unsafe CommandChangeDouble(double* o, double to)
{
_objectRef = o;
_previous = *o;
_new = to;
*_objectRef = _new;
}
public unsafe void Undo()
{
*_objectRef = _previous;
}
public unsafe void Redo()
{
*_objectRef = _new;
}
}
Run Code Online (Sandbox Code Playgroud)
这就是我要的
class CommandChangeValue<T> : Command
{
T _previous;
T _new;
T* _objectRef;
public unsafe CommandChangeValue(T* o, T to)
{
_objectRef = o;
_previous = *o;
_new …Run Code Online (Sandbox Code Playgroud)