Heim > Backend-Entwicklung > C++ > Wie können `typeof`,` gettype` und `is 'differenzieren in der C# -Typprüfung?

Wie können `typeof`,` gettype` und `is 'differenzieren in der C# -Typprüfung?

DDD
Freigeben: 2025-01-30 17:01:12
Original
540 Leute haben es durchsucht

How Do `typeof`, `GetType`, and `is` Differ in C# Type Checking?

c# Typ Prüfung:

, und typeof Vergleich GetType is Bei der Verarbeitung von C#gibt es viele Möglichkeiten, den Objekttyp oder die Variable zu überprüfen. Das Verständnis des Unterschieds zwischen , und

ist für effektive Arten der Inspektion von wesentlicher Bedeutung.

typeof GetType is

Der Bediener ist ein Kompilierungsoperator, der ein -Objekt zurückgibt, das den angegebenen Typ angibt. Es wird normalerweise verwendet, um den Objekttyp während der Zusammenstellung zu vergleichen. Zum Beispiel: typeof

typeof Type

Methode geben die Laufzeittyp der Instanz zurück. Es wird verwendet, um den Typ des Objekts während der Laufzeit zu bestimmen, auch wenn der tatsächliche Typ beim Kompilieren nicht kennt. Zum Beispiel:
Type t = typeof(int);
if (t == typeof(int))
    // 一些代码
Nach dem Login kopieren

GetType <<>

<算> Der Bediener ist ein Laufzeitoperator. Es wird normalerweise verwendet, um zu prüfen, ob das Objekt ein bestimmter Typ oder seinen Ableitungstyp ist. Zum Beispiel: GetType

object obj1 = 5;
if (obj1.GetType() == typeof(int))
    // 一些代码
Nach dem Login kopieren
<区> Hauptunterschiede

is

<<>

: Geben Sie während der Kompilierung Typinformationen basierend auf dem angegebenen Typnamen an. is true

<<>
object obj1 = 5;
if (obj1 is int)
    // 一些代码
Nach dem Login kopieren
: Aperieren Sie während der Laufzeit die tatsächliche Art der Instanz.

: Überprüfen Sie zur Laufzeit, ob die Instanz ein bestimmter Typ oder seinen Erbbaum ist.
  • Vorsichtsmaßnahmen typeof
  • Die beste Wahl dieser drei Methoden hängt von der spezifischen Szene ab.
  • Priorität wird verwendet, um die Typuntersuchungen während der Kompilierung durchzuführen, um die Typkompatibilität so bald wie möglich sicherzustellen. Es ist nützlich, wenn Sie den Instanztyp überprüfen, z. B. in dynamischen Code -Szenarien. GetType Der Bediener ist bequem, die Erbschaftsbeziehung während der Laufzeit zu überprüfen.
  • Beispiel
  • is Betrachten Sie den folgenden Code:
In diesem Beispiel wird

eine Instanz von typeof erben GetType. Allerdings und return is, wenn

tatsächlich

Instanzen. zurück , wenn

Instanz ist.

Das obige ist der detaillierte Inhalt vonWie können `typeof`,` gettype` und `is 'differenzieren in der C# -Typprüfung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage