温馨提示×

c++中typeid的用法是什么

c++
小亿
98
2024-04-23 17:24:44
栏目: 编程语言

typeid是用来获取变量的类型信息的操作符。在C++中,typeid操作符返回一个type_info对象,该对象包含有关变量的类型信息。可以使用typeid操作符来检查两个对象是否是相同类型,或者获取对象的实际类型。

示例用法如下:

#include <iostream>
#include <typeinfo>

int main() {
    int a = 5;
    double b = 3.14;
    
    if (typeid(a) == typeid(int)) {
        std::cout << "a is an integer" << std::endl;
    }
    
    if (typeid(b) != typeid(int)) {
        std::cout << "b is not an integer" << std::endl;
    }
    
    std::cout << "Type of a: " << typeid(a).name() << std::endl;
    std::cout << "Type of b: " << typeid(b).name() << std::endl;
    
    return 0;
}

在上面的例子中,我们使用了typeid操作符来检查变量a和b的类型,并输出相应的信息。需要注意的是,typeid操作符返回的type_info对象可能包含有关具体类型的信息,通常使用name()方法来获取自身的名称。

0