温馨提示×

c++ typeid的用法是什么

c++
小亿
103
2024-02-01 16:39:31
栏目: 编程语言

在C++中,typeid是一个类型识别操作符,用于获取一个表达式的实际类型。

typeid操作符可以接受一个表达式作为参数,返回一个std::type_info对象,该对象包含有关表达式所代表的类型的信息。要使用typeid操作符,需要包含头文件。

例如,下面的代码演示了如何使用typeid操作符:

#include <iostream>
#include <typeinfo>

int main() {
    int i = 5;
    double d = 3.14;
    
    const std::type_info& iType = typeid(i);
    const std::type_info& dType = typeid(d);
    
    std::cout << "i is of type: " << iType.name() << std::endl;
    std::cout << "d is of type: " << dType.name() << std::endl;
    
    return 0;
}

输出结果将会是:

i is of type: int
d is of type: double

需要注意的是,typeid操作符返回的std::type_info对象的name()函数返回的是一个表示类型名称的字符串,具体的格式和内容可能会因编译器而异。因此,类型名称应该被视为一个用于调试目的的信息,而不应该被当作程序逻辑的一部分来使用。

0