次の方法で共有


OperatingSystem.Clone メソッド

インスタンスと同一の OperatingSystem オブジェクトを返します。

Public Overridable Function Clone() As Object Implements _   ICloneable.Clone
[C#]
public virtual object Clone();
[C++]
public: virtual Object* Clone();
[JScript]
public function Clone() : Object;

戻り値

インスタンスのコピーである OperatingSystem オブジェクト。

実装

ICloneable.Clone

使用例

[Visual Basic, C#, C++] Clone を使用して OperatingSystem オブジェクトのコピーを作成するコード例を次に示します。クローンと元のオブジェクトは比較され、同じオブジェクトではないことが示されます。

 
' Example for the OperatingSystem.Clone method.
Imports System
Imports Microsoft.VisualBasic

Module CloneCompareDemo
    
    ' Copy, clone, and duplicate an OperatingSystem object.
    Sub CopyOperatingSystemObjects( )

        ' The Version object does not need to correspond to an 
        ' actual OS version.
        Dim verMMBVer As New Version( 5, 6, 7, 8 )
            
        Dim opCreate1 As New _
            OperatingSystem( PlatformID.Win32NT, verMMBVer )
            
        ' Create another OperatingSystem object with the same 
        ' parameters as opCreate1.
        Dim opCreate2 As New _
            OperatingSystem( PlatformID.Win32NT, verMMBVer )
            
        ' Clone opCreate1 and copy the opCreate1 reference.
        Dim opClone As OperatingSystem = _
            CType( opCreate1.Clone( ), OperatingSystem )
        Dim opCopy As OperatingSystem = opCreate1

        ' Compare the various objects for equality.
        Console.WriteLine( "{0,-50}{1}", _
            "Is the second object the same as the original?", _
            opCreate1.Equals( opCreate2 ) )
        Console.WriteLine( "{0,-50}{1}", _
            "Is the object clone the same as the original?", _
            opCreate1.Equals( opClone ) )
        Console.WriteLine( "{0,-50}{1}", _
            "Is the copied object the same as the original?", _
            opCreate1.Equals( opCopy ) )
    End Sub 
        
    Sub Main( )

        Console.WriteLine( _
            "This example of OperatingSystem.Clone( ) " & _
            "generates the following output." & vbCrLf )
        Console.WriteLine( _
            "Create an OperatingSystem object, and then " & _
            "create another object with the " & vbCrLf & _
            "same parameters. Clone and copy the " & _
            "original object, and then compare " & vbCrLf & _
            "each object with the original using the " & _
            "Equals( ) method. Equals( ) " & vbCrLf & _
            "returns true only when both " & _
            "references refer to the same object." & vbCrLf)
            
        CopyOperatingSystemObjects( )

    End Sub 
End Module 

' This example of OperatingSystem.Clone( ) generates the following output.
' 
' Create an OperatingSystem object, and then create another object with the
' same parameters. Clone and copy the original object, and then compare
' each object with the original using the Equals( ) method. Equals( )
' returns true only when both references refer to the same object.
' 
' Is the second object the same as the original?    False
' Is the object clone the same as the original?     False
' Is the copied object the same as the original?    True

[C#] 
// Example for the OperatingSystem.Clone method.
using System;

class CloneCompareDemo
{
    // Copy, clone, and duplicate an OperatingSystem object.
    static void CopyOperatingSystemObjects( )
    {
        // The Version object does not need to correspond to an 
        // actual OS version.
        Version verMMBVer = new Version( 5, 6, 7, 8 );
            
        OperatingSystem opCreate1 = new 
            OperatingSystem( PlatformID.Win32NT, verMMBVer );
            
        // Create another OperatingSystem object with the same 
        // parameters as opCreate1.
        OperatingSystem opCreate2 = new 
            OperatingSystem( PlatformID.Win32NT, verMMBVer );
            
        // Clone opCreate1 and copy the opCreate1 reference.
        OperatingSystem opClone = 
            (OperatingSystem)opCreate1.Clone( );
        OperatingSystem opCopy = opCreate1;

        // Compare the various objects for equality.
        Console.WriteLine( "{0,-50}{1}", 
            "Is the second object the same as the original?", 
            opCreate1.Equals( opCreate2 ) );
        Console.WriteLine( "{0,-50}{1}", 
            "Is the object clone the same as the original?", 
            opCreate1.Equals( opClone ) );
        Console.WriteLine( "{0,-50}{1}", 
            "Is the copied object the same as the original?", 
            opCreate1.Equals( opCopy ) );
    } 
        
    static void Main( )
    {
        Console.WriteLine(
            "This example of OperatingSystem.Clone( ) " +
            "generates the following output.\n" );
        Console.WriteLine(
            "Create an OperatingSystem object, and then " +
            "create another object with the \n" +
            "same parameters. Clone and copy the original " +
            "object, and then compare \n" +
            "each object with the original " +
            "using the Equals( ) method. Equals( ) \n" +
            "returns true only when both " +
            "references refer to the same object.\n" );
            
        CopyOperatingSystemObjects( );
    } 
} 

/*
This example of OperatingSystem.Clone( ) generates the following output.

Create an OperatingSystem object, and then create another object with the
same parameters. Clone and copy the original object, and then compare
each object with the original using the Equals( ) method. Equals( )
returns true only when both references refer to the same object.

Is the second object the same as the original?    False
Is the object clone the same as the original?     False
Is the copied object the same as the original?    True
*/

[C++] 
// Example for the OperatingSystem::Clone method.
#using <mscorlib.dll>
using namespace System;

// Copy, clone, and duplicate an OperatingSystem object.
void CopyOperatingSystemObjects( )
{
    // The Version object does not need to correspond to an 
    // actual OS version.
    Version* verMMBVer = new Version( 5, 6, 7, 8 );
        
    OperatingSystem* opCreate1 = new 
        OperatingSystem( PlatformID::Win32NT, verMMBVer );
        
    // Create another OperatingSystem object with the same 
    // parameters as opCreate1.
    OperatingSystem* opCreate2 = new 
        OperatingSystem( PlatformID::Win32NT, verMMBVer );
        
    // Clone opCreate1 and copy the opCreate1 reference.
    OperatingSystem* opClone = 
        __try_cast<OperatingSystem*>( opCreate1->Clone( ) );
    OperatingSystem* opCopy = opCreate1;

    // Compare the various objects for equality.
    Console::WriteLine( S"{0,-50}{1}", 
        S"Is the second object the same as the original?", 
        __box( opCreate1->Equals( opCreate2 ) ) );
    Console::WriteLine( S"{0,-50}{1}", 
        S"Is the object clone the same as the original?", 
        __box( opCreate1->Equals( opClone ) ) );
    Console::WriteLine( S"{0,-50}{1}", 
        S"Is the copied object the same as the original?", 
        __box( opCreate1->Equals( opCopy ) ) );
} 
           
void main( )
{
    Console::WriteLine(
        S"This example of OperatingSystem::Clone( ) " 
        S"generates the following output.\n" );
    Console::WriteLine(
        S"Create an OperatingSystem object, and then " 
        S"create another object with the \n" 
        S"same parameters. Clone and copy the original " 
        S"object, and then compare \n" 
        S"each object with the original " 
        S"using the Equals( ) method. Equals( ) \n" 
        S"returns true only when both " 
        S"references refer to the same object.\n" );
        
    CopyOperatingSystemObjects( );
} 

/*
This example of OperatingSystem::Clone( ) generates the following output.

Create an OperatingSystem object, and then create another object with the
same parameters. Clone and copy the original object, and then compare
each object with the original using the Equals( ) method. Equals( )
returns true only when both references refer to the same object.

Is the second object the same as the original?    False
Is the object clone the same as the original?     False
Is the copied object the same as the original?    True
*/

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

OperatingSystem クラス | OperatingSystem メンバ | System 名前空間