1、类型转换
1、_cast---->普通类型的强制转换
2、reinterpret_cast—>指针类型的转换
3、dynamic_cast---->类层次之间的类型转换
成功返回转换类型的指针
失败返回nullptr
4、const_cast---->const变量转换成非const变量
#include <iostream>
using namespace std;
//static_cast---->普通类型的强制转换
//reinterpret_cast--->指针类型的转换
void func1()
{
int a = 10;
char b = 'a';
a = static_cast<int>(b); //把b转换成int型赋值给a
char *pb = &b;
int *pa = reinterpret_cast<int *>(pb);//把char*类型的pb转换成int*赋给pa
}
class Am
{
public:
virtual void sleep()
{
cout<<"动物睡觉"<<endl;
}
};
class Dog:public Am
{
public:
virtual void sleep()
{
cout<<"狗睡觉"<<endl;
}
void lookhomg()
{
cout<<"狗看家"<<endl;
}
};
class Cat:public Am
{
public:
virtual void sleep()
{
cout<<"猫睡觉"<<endl;