c++输出变量数据的类型
时间: 2024-09-18 22:13:39 浏览: 56
在C++中,你可以使用` typeid `关键字或者` dynamic_cast `运算符来获取或检查变量的数据类型。`typeid`函数返回一个`type_info`对象,它包含了关于类型的名称和特性的信息。例如:
```cpp
#include <typeinfo>
int main() {
int i;
std::cout << "Type of i is: " << typeid(i).name() << std::endl; // 输出:Type of i is: i
return 0;
}
```
如果你想在运行时动态地判断并转换类型,可以使用`dynamic_cast`,如:
```cpp
class Base {};
class Derived : public Base {};
Base* base = new Derived();
if (Derived* derived = dynamic_cast<Derived*>(base)) {
// 这里我们知道base是一个Derived对象
derived->do_derived_operation();
} else {
// 如果不是,dynamic_cast会失败,并设置为nullptr
assert(!derived);
}
```
阅读全文