ValueType.ToString Metoda

Definice

Vrátí plně kvalifikovaný název této instance.Returns the fully qualified type name of this instance.

public:
 override System::String ^ ToString();
public override string ToString ();
public override string? ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String

Návraty

String

Plně kvalifikovaný název typu.The fully qualified type name.

Poznámky

ValueType.ToStringMetoda přepisuje Object.ToString metodu a poskytuje výchozí implementaci ToString metody pro typy hodnot.The ValueType.ToString method overrides the Object.ToString method and provides the default implementation of the ToString method for value types. (Typy hodnot jsou typy definované struct klíčovým slovem v jazyce C# a Structure konstruktorem... End Structure v Visual Basic.) Funkce je však v tuto implementaci stejná jako u Object.ToString : metoda vrátí plně kvalifikovaný název typu.(Value types are types defined by the struct keyword in C#, and by the Structure...End Structure construct in Visual Basic.) Functionally, however, the implementation is that same as that of Object.ToString: the method returns the fully qualified type name.

Typy hodnot definované struct klíčovým slovem v jazyce C# a Structure ... End Structure konstrukce v Visual Basic obvykle přepíší ValueType.ToString metodu tak, aby poskytovala smysluplnější řetězcové vyjádření typu hodnoty.Value types defined by the struct keyword in C# and the Structure...End Structure construct in Visual Basic typically override the ValueType.ToString method to provide a more meaningful string representation of the value type. Rozdíl je znázorněn v následujícím příkladu.The following example illustrates the difference. Definuje dva typy hodnot EmployeeA a EmployeeB , vytvoří instanci každého a zavolá jeho ToString metodu.It defines two value types, EmployeeA and EmployeeB, creates an instance of each, and calls its ToString method. Vzhledem k tomu EmployeeA , že struktura nepřepisuje ValueType.ToString metodu, zobrazí se pouze plně kvalifikovaný název typu.Because the EmployeeA structure does not override the ValueType.ToString method, it displays only the fully qualified type name. EmployeeB.ToStringNa druhé straně Tato metoda poskytuje smysluplné informace o objektu.The EmployeeB.ToString method, on the other hand, provides meaningful information about the object.

using System;
using Corporate.EmployeeObjects;

public class Example
{
   public static void Main()
   {
      var empA = new EmployeeA{ Name = "Robert",};
      Console.WriteLine(empA.ToString());
      
      var empB = new EmployeeB{ Name = "Robert",};
      Console.WriteLine(empB.ToString());
   }
}

namespace Corporate.EmployeeObjects
{
    public struct EmployeeA
    {
         public String Name { get; set; }
    }
    
    public struct EmployeeB
    {
         public String Name { get; set; }

         public override String ToString()
         {
              return Name;
         }
    }  
}
// The example displays the following output:
//     Corporate.EmployeeObjects.EmployeeA
//     Robert
Imports Corporate.EmployeeObjects

Module Example
   Public Sub Main()
      Dim empA As New EmployeeA With { .Name = "Robert" }
      Console.WriteLine(empA.ToString())
      
      Dim empB = new EmployeeB With { .Name = "Robert" }
      Console.WriteLine(empB.ToString())
   End Sub
End Module

Namespace Corporate.EmployeeObjects
    Public Structure EmployeeA
         Public Property Name As String 
    End Structure
    
    Public Structure EmployeeB
         Public Property Name As String 

         Public Overrides Function ToString() As String 
              Return Name
         End Function
    End Structure  
End Namespace
' The example displays the following output:
'     Corporate.EmployeeObjects.EmployeeA
'     Robert

Všimněte si, že i když výčtové typy jsou také typy hodnot, jsou odvozeny ze Enum třídy, která přepisuje ValueType.ToString .Note that, although enumeration types are also value types, they derive from the Enum class, which overrides ValueType.ToString.

Poznámky k prostředí Windows RuntimeNotes for the Windows Runtime

Při volání ToString metody ve struktuře prostředí Windows Runtime poskytuje výchozí chování pro typy hodnot, které nelze přepsat ToString .When you call the ToString method on a Windows Runtime structure, it provides the default behavior for value types that don't override ToString. Toto je součást podpory, kterou .NET Framework poskytuje pro prostředí Windows Runtime (viz podpora .NET Framework pro aplikace pro Windows Store a prostředí Windows Runtime).This is part of the support that the .NET Framework provides for the Windows Runtime (see .NET Framework Support for Windows Store Apps and Windows Runtime). Prostředí Windows Runtime struktury nelze přepsat ToString , i když jsou napsány v jazyce C# nebo Visual Basic, protože nemohou mít metody.Windows Runtime structures can't override ToString, even if they're written with C# or Visual Basic, because they can't have methods. (Kromě toho struktury v samotném prostředí Windows Runtime nedědí ValueType .) Zdá se však, že existují ToString Equals metody, a, pokud je GetHashCode používáte v kódu C# nebo Visual Basic a .NET Framework poskytuje výchozí chování pro tyto metody.(In addition, structures in the Windows Runtime itself don't inherit ValueType.) However, they appear to have ToString, Equals, and GetHashCode methods when you use them in your C# or Visual Basic code, and the .NET Framework provides the default behavior for these methods.

Platí pro