91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c++ typeid的作用是什么

c++
小億
91
2024-02-01 16:27:41
欄目: 編程語言

C++中的typeid是一個運算符,用于獲取一個表達式的類型信息。它的作用是返回一個std::type_info對象,該對象包含了表達式的類型信息,包括類型的名稱。

typeid通常與dynamic_caststd::type_info一起使用,用于在運行時識別對象的實際類型,從而實現多態性。

下面是typeid的使用示例:

#include <iostream>
#include <typeinfo>

class Base {
   virtual void foo() {}
};

class Derived : public Base {};

int main() {
   Base* basePtr = new Derived();

   // 使用typeid獲取basePtr所指對象的類型信息
   const std::type_info& type = typeid(*basePtr);

   // 打印類型的名稱
   std::cout << "Object type: " << type.name() << std::endl;

   // 使用typeid進行類型判斷
   if (type == typeid(Base)) {
      std::cout << "Object is of type Base" << std::endl;
   }
   else if (type == typeid(Derived)) {
      std::cout << "Object is of type Derived" << std::endl;
   }

   delete basePtr;
   return 0;
}

輸出結果:

Object type: class Derived
Object is of type Derived

在上面的示例中,typeid(*basePtr)返回的type_info對象的名稱為"class Derived",表示basePtr所指的對象的實際類型是Derived

0
芜湖市| 乃东县| 南昌市| 财经| 泰安市| 岱山县| 潜江市| 水富县| 祁阳县| 宜州市| 泉州市| 双鸭山市| 集贤县| 张掖市| 昭觉县| 来安县| 阜城县| 永昌县| 盐亭县| 林州市| 云龙县| 铁力市| 亳州市| 萨迦县| 邯郸市| 微山县| 永川市| 镇原县| 澎湖县| 东丽区| 金山区| 泰兴市| 东宁县| 静安区| 浙江省| 浦东新区| 保康县| 苏州市| 五常市| 西乌| 三门峡市|