NumberFormatInfo.Clone メソッド


NumberFormatInfo オブジェクトの簡易コピーを作成します。Creates a shallow copy of the NumberFormatInfo object.

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



元の NumberFormatInfo オブジェクトからコピーされた新しいオブジェクト。A new object copied from the original NumberFormatInfo object.


次の例では、メソッドを使用して、 Clone NumberFormatInfo 現在のスレッドカルチャの数値書式指定規則を表すオブジェクトの読み取り/書き込みコピーを作成します。The following example uses the Clone method to create a read/write copy of a NumberFormatInfo object that represents the numeric formatting conventions of the current thread culture.

using System;
using System.Globalization;

public class Example
   public static void Main()
      NumberFormatInfo nfi = NumberFormatInfo.CurrentInfo;
      Console.WriteLine("Read-Only: {0}\n", nfi.IsReadOnly);

      NumberFormatInfo nfiw = (NumberFormatInfo) nfi.Clone();
      Console.WriteLine("Read-Only: {0}", nfiw.IsReadOnly);
// The example displays the following output:
//       Read-Only: True
//       Read-Only: False
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim nfi As NumberFormatInfo = NumberFormatInfo.CurrentInfo
      Console.WriteLine("Read-Only: {0}", nfi.IsReadOnly)
      Dim nfiw As NumberFormatInfo = CType(nfi.Clone(), NumberFormatInfo)
      Console.WriteLine("Read-Only: {0}", nfiw.IsReadOnly)
   End Sub
End Module
' The example displays the following output:
'       Read-Only: True
'       Read-Only: False


元のオブジェクトが読み取り専用であっても、複製は書き込み可能です NumberFormatInfoThe clone is writable even if the original NumberFormatInfo object is read-only. そのため、複製のプロパティは、ユーザー定義のパターンで変更できます。Therefore, the properties of the clone can be modified with user-defined patterns.

オブジェクトの簡易コピーは、オブジェクトのコピーにすぎません。A shallow copy of an object is a copy of the object only. オブジェクトに他のオブジェクトへの参照が含まれている場合、シャローコピーは参照されるオブジェクトのコピーを作成しません。If the object contains references to other objects, the shallow copy will not create copies of the referred objects. 代わりに、元のオブジェクトが参照されます。It will refer to the original objects instead. 一方、オブジェクトの詳細コピーでは、オブジェクトのコピーと、そのオブジェクトによって直接または間接的に参照されるすべてのもののコピーが作成されます。On the other hand, a deep copy of an object creates a copy of the object and a copy of everything directly or indirectly referenced by that object. オブジェクト NumberFormatInfo 参照を返すすべてのプロパティが static (Visual Basic) であるため、オブジェクトの場合、すべてのインスタンスプロパティをコピーするには簡易コピーが必要です SharedIn the case of a NumberFormatInfo object, a shallow copy is sufficient for copying all instance properties, because all properties that return object references are static (Shared in Visual Basic).