OperatingSystem.Clone 方法

创建与此实例相同的 OperatingSystem 对象。

**命名空间:**System
**程序集:**mscorlib(在 mscorlib.dll 中)

语法

声明
Public Function Clone As Object
用法
Dim instance As OperatingSystem
Dim returnValue As Object

returnValue = instance.Clone
public Object Clone ()
public:
virtual Object^ Clone () sealed
public final Object Clone ()
public final function Clone () : Object

返回值

OperatingSystem 对象,是此实例的副本。

示例

下面的代码示例演示如何使用 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
// 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.
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.
import 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?",
            System.Convert.ToString(opCreate1.Equals(opCreate2)));
        Console.WriteLine("{0,-50}{1}", 
            "Is the object clone the same as the original?",
            System.Convert.ToString(opCreate1.Equals(opClone)));
        Console.WriteLine("{0,-50}{1}", 
            "Is the copied object the same as the original?",
            System.Convert.ToString(opCreate1.Equals(opCopy)));
    } //CopyOperatingSystemObjects

    public static void main(String[] args)
    {
        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();
    } //main
} //CloneCompareDemo

/*
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
*/

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

OperatingSystem 类
OperatingSystem 成员
System 命名空间