2020年4月28日 上午11:07
这篇文章涉及到《C++ primer》中分散的多节内容:
- P32 类型转换
- 含有无符号数类型的表达式
- P141 类型转换
- 算数转换
- 隐式类型转换
- 显示转换
- P263 隐式的类类型转换
- P514 重载、类型转换与运算符
- 类型转换运算符
- 避免有二义性的类型转换
内存层次:
- 算数类型转换主要涉及到内存,这么做的原因我认为和内存对齐有关,当我们做了统一的整型提升、转换成浮点类型,统一的类型可以更方便的做到内存对齐
- 这里面最坑的是无符号类型的转换,分两种类型:具体内容在P32 + P141
语法层次:
- 我认为关于指针的转换都是语法层次的,指针指向是地址,地址就是地址,只不过在语法层次我们有区分了指向不同类型的指针
- 转换成常量
包装层次:
- 类类型的转换
- 构造方法的自动转换,explicit
- 类型转换运算符的自动转换,explicit