std::type_index
时间: 2023-12-13 15:05:24 浏览: 134
ISO/IEC 14882:2014 C++14 C++标准 英文版 PDF 非扫描版
5星 · 资源好评率100%
std::type_index是一个用于标识类型的类模板。它在C++标准库中定义,位于<typeindex>头文件中。std::type_index可以用来比较类型,作为关联容器(如std::map、std::unordered_map)的键类型,以及其他需要对类型进行索引或比较的场景。
使用std::type_index,可以通过类型名或类型信息对象(如typeid)来创建类型索引对象。下面是一个简单的示例:
```cpp
#include <iostream>
#include <typeindex>
#include <typeinfo>
int main() {
std::type_index typeIdx1 = std::type_index(typeid(int));
std::type_index typeIdx2 = std::type_index(typeid(double));
if (typeIdx1 == typeIdx2) {
std::cout << "The types are the same." << std::endl;
} else {
std::cout << "The types are different." << std::endl;
}
return 0;
}
```
在上面的示例中,我们使用std::type_index创建了两个类型索引对象typeIdx1和typeIdx2,并比较它们是否相等。根据实际情况,我们可以通过重载==运算符来比较类型索引对象。
希望这能解答你的问题!如果还有其他问题,请随时提问。
阅读全文