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()方法來獲取自身的名稱。