Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

ICloneable.Clone Method

Definition

Namespace:
System
Assemblies:
netstandard.dll, System.Runtime.dll
Assembly:
System.Runtime.dll
Assembly:
mscorlib.dll
Assembly:
netstandard.dll
Source:
ICloneable.cs
Source:
ICloneable.cs
Source:
Base64Encoder.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

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

Returns

A new object that is a copy of this instance.

Remarks

The resulting clone must be of the same type as, or compatible with, the original instance.

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. Because callers of Clone cannot depend on the method performing a predictable cloning operation, we recommend that ICloneable not be implemented in public APIs.

See Object.MemberwiseClone for more information on cloning, deep versus shallow copies, and examples.

Applies to

See also


Feedback

Was this page helpful?