Я знаю, что для выполнения мелкой копии в C# мы могли бы использовать функцию MemberwiseClone() , но у меня есть объект внутри функции, и я хочу взять копию этого объекта, поэтому, когда я добавил к список не будет ссылаться на тот же объект, когда объект изменен вот мой кодОбъект Shallow Copy in C#
public void Do(object undoState)
{
_index += 1;
if (_buffer.Count > _index)
_buffer.RemoveRange(_index, _buffer.Count - _index);
_buffer.Add(undoState);
}
Я хочу, чтобы скопировать UndoState объект на новый объект и добавляется в буфер
спасибо
См. Http://stackoverflow.com/a/1031062/939213 – ispiro
То, что вы здесь указали, «возьмите копию этого объекта, поэтому, когда я добавлен в список, он не будет ссылаться на один и тот же объект» является Глубокая копия, в которой вы не просто создаете копию ссылки на объект, а создаете новый объект и копируете базовые значения. – Lloyd