NumberFormatInfo.Clone メソッド

定義

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

public:
 virtual System::Object ^ Clone();
public object Clone ();
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)
      Console.WriteLine()
      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

注釈

NumberFormatInfoのオブジェクトが読み取り専用であっても、複製は書き込み可能です。The 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 (Shared Visual Basic) であるため、オブジェクトの場合、すべてのインスタンスプロパティをコピーするには簡易コピーが必要です。In 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).

適用対象

こちらもご覧ください