Heim  >  Artikel  >  Backend-Entwicklung  >  Verwendung von typeid in C++

Verwendung von typeid in C++

下次还敢
下次还敢Original
2024-05-01 11:42:17738Durchsuche

Der

typeid-Operator ruft die statischen Typinformationen des Objekts ab und gibt ein type_info-Objekt zurück, das Typname, Größe, Ausrichtung, Basisklasse, Modifikatoren und andere Informationen enthält. Auf Objektinformationen kann über Methoden wie name(), before() und base() zugegriffen werden.

Verwendung von typeid in C++

Verwendung von typeid in C++

Der typeid-Operator ist ein C++-Schlüsselwort, das zum Abrufen der statischen Typinformationen eines Objekts verwendet wird. Es gibt ein type_info-Objekt zurück, das verschiedene Informationen zum Objekttyp enthält.

Verwendung:

Dem Typ-ID-Operator folgt ein Ausdruck, der den Ausdruck darstellt, dessen Typinformationen abgerufen werden sollen. Der Ausdruck kann sein:

  • Variable
  • Ausdruck
  • Funktionsrückgabetyp
  • Typalias

Syntax:

<code class="cpp">typeid(expression) // 其中 expression 是要获取其类型信息的表达式</code>

Rückgabewert:

typeid-Operator gibt ein type_info-Objekt zurück das Informationen über Folgendes enthält Informationen zum Objekttyp:

  • Typname
  • Typgröße
  • Typausrichtung
  • Typableitungsinformationen
  • Typgrundinformationen
  • Typmodifikatorinformationen
  • Typänderungsinformationen

Der Zugriff auf das type_info-Objekt erfolgt über Informationen zu den folgenden Methoden:

  • name(): Gibt den Typnamen zurück.
  • before() und after(): Ruft die Basisklasse von der abgeleiteten Klasse und die abgeleitete Klasse von der Basisklasse ab.
  • base(): Gibt zurück die direkte Basisklasse
  • wachsen() und schrumpfen(): Ändern Sie die Array-Größe im Typnamen
  • modifier(): Geben Sie den Typmodifikator zurück

Beispiel:

<code class="cpp">int main() {
  int x;
  std::string s;
  std::cout << typeid(x).name() << std::endl; // 输出:int
  std::cout << typeid(s).name() << std::endl; // 输出:std::__cxx11::basic_string<char>
  return 0;
}</code>

Hinweis:

  • typeid-Operator Es können nur statische Typinformationen verwendet werden. Es kann nicht zum Abrufen von Laufzeittypinformationen für ein Objekt verwendet werden.
  • Die Ergebnisse des Typeid-Operators können je nach Compiler und Plattform variieren.
  • Der Typ-ID-Operator verursacht nur einen sehr geringen Overhead, seine häufige Verwendung kann jedoch zu Leistungseinbußen führen.

Das obige ist der detaillierte Inhalt vonVerwendung von typeid in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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