ICloneable Rozhraní

Definice

Podporuje klonování, které vytvoří novou instanci třídy se stejnou hodnotou jako existující instance.Supports cloning, which creates a new instance of a class with the same value as an existing instance.

public interface class ICloneable
public interface ICloneable
[System.Runtime.InteropServices.ComVisible(true)]
public interface ICloneable
type ICloneable = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type ICloneable = interface
Public Interface ICloneable
Odvozené
Atributy

Poznámky

ICloneableRozhraní umožňuje poskytnout přizpůsobenou implementaci, která vytvoří kopii existujícího objektu.The ICloneable interface enables you to provide a customized implementation that creates a copy of an existing object. ICloneableRozhraní obsahuje jeden člen, Clone metodu, která je určena k poskytování podpory klonování nad rámec, který poskytuje Object.MemberwiseClone .The ICloneable interface contains one member, the Clone method, which is intended to provide cloning support beyond that supplied by Object.MemberwiseClone. Další informace o klonování, hloubkových a neomezených kopiích a příklady naleznete v Object.MemberwiseClone metodě.For more information about cloning, deep versus shallow copies, and examples, see the Object.MemberwiseClone method.

Poznámky pro implementátory

ICloneableRozhraní jednoduše vyžaduje, aby vaše implementace Clone() metody vrátila kopii aktuální instance objektu.The ICloneable interface simply requires that your implementation of the Clone() method return a copy of the current object instance. Neurčuje, zda operace klonování provede hlubokou kopii, neomezený opis nebo něco z.It does not specify whether the cloning operation performs a deep copy, a shallow copy, or something in between. Ani to nevyžaduje, aby se všechny hodnoty vlastností původní instance zkopírovaly do nové instance.Nor does it require all property values of the original instance to be copied to the new instance. Například metoda provede bezstavovou Clone() kopii všech vlastností s výjimkou IsReadOnly vlastnosti; vždy nastaví tuto hodnotu vlastnosti na false Klonovaný objekt.For example, the Clone() method performs a shallow copy of all properties except the IsReadOnly property; it always sets this property value to false in the cloned object. Vzhledem k tomu, že volající Clone() nemohou záviset na metodě, která provádí předvídatelné operace klonování, doporučujeme, abyste ICloneable ji neimplementovali ve veřejných rozhraních 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.

Metody

Clone()

Vytváří nový objekt, který je kopií aktuální instance.Creates a new object that is a copy of the current instance.

Platí pro

Viz také