Partilhar via


OperatingSystem.Clone Método

Definição

Cria um objeto OperatingSystem idêntico a esta instância.

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

Retornos

Object

Um objeto OperatingSystem que é uma cópia dessa instância.

Implementações

Exemplos

O exemplo de código a seguir ilustra o uso do Clone método para fazer uma cópia de um OperatingSystem objeto. O clone é comparado com o objeto original para mostrar que eles não são o mesmo objeto.

// Example for the OperatingSystem::Clone method.
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 = gcnew Version( 5,6,7,8 );
   OperatingSystem^ opCreate1 = gcnew OperatingSystem( PlatformID::Win32NT,verMMBVer );
   
   // Create another OperatingSystem object with the same 
   // parameters as opCreate1.
   OperatingSystem^ opCreate2 = gcnew OperatingSystem( PlatformID::Win32NT,verMMBVer );
   
   // Clone opCreate1 and copy the opCreate1 reference.
   OperatingSystem^ opClone = safe_cast<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 ) );
}

int 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
*/
// 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
*/
// Example for the OperatingSystem.Clone method.
open System

// Copy, clone, and duplicate an OperatingSystem object.
let copyOperatingSystemObjects () =
    // The Version object does not need to correspond to an
    // actual OS version.
    let verMMBVer = Version(5, 6, 7, 8)

    let opCreate1 = OperatingSystem(PlatformID.Win32NT, verMMBVer)

    // Create another OperatingSystem object with the same
    // parameters as opCreate1.
    let opCreate2 = OperatingSystem(PlatformID.Win32NT, verMMBVer)

    // Clone opCreate1 and copy the opCreate1 reference.
    let opClone = opCreate1.Clone() :?> OperatingSystem
    let opCopy = opCreate1

    // Compare the various objects for equality.
    printfn "%-50s%O" "Is the second object the same as the original?" (opCreate1.Equals opCreate2)
    printfn "%-50s%O" "Is the object clone the same as the original?" (opCreate1.Equals opClone)
    printfn "%-50s%O" "Is the copied object the same as the original?" (opCreate1.Equals opCopy)

printfn
    """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.
"""

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
' Example for the OperatingSystem.Clone method.
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

Aplica-se a