ICloneable.Clone Метод

Определение

Создает новый объект, который является копией текущего экземпляра.Creates a new object that is a copy of the current instance.

public:
 System::Object ^ Clone();
public object Clone ();
abstract member Clone : unit -> obj
Public Function Clone () As Object

Возвращаемое значение

Object

Новый объект, который является копией данного экземпляра.A new object that is a copy of this instance.

Комментарии

Итоговый клон должен иметь тот же тип, что и, или совместимый с, исходным экземпляром.The resulting clone must be of the same type as, or compatible with, the original instance.

Реализация Clone может выполнять либо глубокую, либо поверхностную копию.An implementation of Clone can perform either a deep copy or a shallow copy. При глубоком копировании все объекты дублируются; в поверхностной копии дублируются только объекты верхнего уровня, а нижние уровни содержат ссылки.In a deep copy, all objects are duplicated; in a shallow copy, only the top-level objects are duplicated and the lower levels contain references. Поскольку вызывающие объекты Clone не могут зависеть от метода, выполняющего прогнозируемую операцию клонирования, мы рекомендуем ICloneable не реализовывать их в общедоступных API.Because callers of Clone cannot depend on the method performing a predictable cloning operation, we recommend that ICloneable not be implemented in public APIs.

Object.MemberwiseCloneДополнительные сведения о клонировании, глубоких и поверхностных копиях и примерах см. в разделе.See Object.MemberwiseClone for more information on cloning, deep versus shallow copies, and examples.

Применяется к

См. также раздел