YouTube视频链接
C++的类型双关
本文是ChernoP66视频的学习笔记。
类型双关用来在C++中绕过类型系统。C++中有类型系统,当我们创建变量时必须声明整数或双精度数或类等等。C++中的类型是由编译器强制执行的,但我们可以直接访问内存。
若声明一个整数a然后当作double类型。并打印value,在第12行设置断点,按F5运行是50,查看a的内存地址,16进制的32就是50。
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ec4c8915d034f3888ca2dab22d0d2c7.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA572X5pu85Y-y55qE6YCd5LiW,size_18,color_FFFFFF,t_70,g_se,x_16)
再看下value的地址,它们的内存地址不同,这里是8个字节。它将一个int类型转换为double类型,这里是隐式转换。
![在这里插入图片描述](https://img-blog.csdnimg.cn/7410aced477244eb96dea66d9e999c17.png)
若要做显示转换。
double valu