Type.GetHashCode Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí hodnotu hash pro tuto instanci.
public:
override int GetHashCode();
public override int GetHashCode ();
override this.GetHashCode : unit -> int
Public Overrides Function GetHashCode () As Integer
Návraty
Kód hash této instance
Implementuje
Příklady
Následující příklad zobrazuje kód hash System.Windows.Forms.Button
třídy.
#using <system.dll>
#using <system.windows.forms.dll>
#using <System.Drawing.dll>
using namespace System;
using namespace System::Security;
using namespace System::Reflection;
int main()
{
Type^ myType = System::Net::IPAddress::typeid;
array<FieldInfo^>^myFields = myType->GetFields( static_cast<BindingFlags>(BindingFlags::Static | BindingFlags::NonPublic) );
Console::WriteLine( "\nThe IPAddress class has the following nonpublic fields: " );
System::Collections::IEnumerator^ myEnum = myFields->GetEnumerator();
while ( myEnum->MoveNext() )
{
FieldInfo^ myField = safe_cast<FieldInfo^>(myEnum->Current);
Console::WriteLine( myField );
}
Type^ myType1 = System::Net::IPAddress::typeid;
array<FieldInfo^>^myFields1 = myType1->GetFields();
Console::WriteLine( "\nThe IPAddress class has the following public fields: " );
System::Collections::IEnumerator^ myEnum2 = myFields1->GetEnumerator();
while ( myEnum2->MoveNext() )
{
FieldInfo^ myField = safe_cast<FieldInfo^>(myEnum2->Current);
Console::WriteLine( myField );
}
try
{
Console::WriteLine( "The HashCode of the System::Windows::Forms::Button type is: {0}", System::Windows::Forms::Button::typeid->GetHashCode() );
}
catch ( SecurityException^ e )
{
Console::WriteLine( "An exception occurred." );
Console::WriteLine( "Message: {0}", e->Message );
}
catch ( Exception^ e )
{
Console::WriteLine( "An exception occurred." );
Console::WriteLine( "Message: {0}", e->Message );
}
}
using System;
using System.Security;
using System.Reflection;
class FieldsSample
{
public static void Main()
{
Type myType = typeof(System.Net.IPAddress);
FieldInfo [] myFields = myType.GetFields(BindingFlags.Static | BindingFlags.NonPublic);
Console.WriteLine ("\nThe IPAddress class has the following nonpublic fields: ");
foreach (FieldInfo myField in myFields)
{
Console.WriteLine(myField.ToString());
}
Type myType1 = typeof(System.Net.IPAddress);
FieldInfo [] myFields1 = myType1.GetFields();
Console.WriteLine ("\nThe IPAddress class has the following public fields: ");
foreach (FieldInfo myField in myFields1)
{
Console.WriteLine(myField.ToString());
}
try
{
Console.WriteLine("The HashCode of the System.Windows.Forms.Button type is: {0}",
typeof(System.Windows.Forms.Button).GetHashCode());
}
catch(SecurityException e)
{
Console.WriteLine("An exception occurred.");
Console.WriteLine("Message: "+e.Message);
}
catch(Exception e)
{
Console.WriteLine("An exception occurred.");
Console.WriteLine("Message: "+e.Message);
}
}
}
Imports System.Security
Imports System.Reflection
' Compile this sample using the following command line:
' vbc type_gethashcode_getfields.vb /r:"System.Windows.Forms.dll" /r:"System.dll"
Class FieldsSample
Public Shared Sub Main()
Dim myType As Type = GetType(System.Net.IPAddress)
Dim myFields As FieldInfo() = myType.GetFields((BindingFlags.Static Or BindingFlags.NonPublic))
Console.WriteLine(ControlChars.Lf & "The IPAddress class has the following nonpublic fields: ")
Dim myField As FieldInfo
For Each myField In myFields
Console.WriteLine(myField.ToString())
Next myField
Dim myType1 As Type = GetType(System.Net.IPAddress)
Dim myFields1 As FieldInfo() = myType1.GetFields()
Console.WriteLine(ControlChars.Lf & "The IPAddress class has the following public fields: ")
Dim myField1 As FieldInfo
For Each myField1 In myFields1
Console.WriteLine(myField.ToString())
Next myField1
Try
Console.WriteLine("The HashCode of the System.Windows.Forms.Button type is: {0}", GetType(System.Windows.Forms.Button).GetHashCode())
Catch e As SecurityException
Console.WriteLine("An exception occurred.")
Console.WriteLine(("Message: " & e.Message))
Catch e As Exception
Console.WriteLine("An exception occurred.")
Console.WriteLine(("Message: " & e.Message))
End Try
End Sub
End Class
Poznámky
Tato metoda přepisuje Object.GetHashCode .