您的位置:首页 > 其它

第15章-友元、异常和其他

2017-12-05 22:13 183 查看
这章貌似我碰到的不多,就不多说了,以后遇到应该会回来翻书,到时候再总结。

先只说一下碰到的类型转换运算符。

15.5类型转换运算符

四种:

1、dynamic_cast :子类指针单向基类指针转换。继承,单向。

2、static_cast:用在有继承关系上的指针上,基类和子类可以互相转化,不限制方向。只限制继承关系。继承,双向。

3、const_cast:同类型const(非const)指针向非const(const)指针转换。最好是只在同类型之间转换const性,不要跨类型使用。因为如果跨完全没关系的两个类型,为啥不再定义一个呢?如果是有继承关系的为啥不用dynamic_cast 和static_cast呢?

4、reinterpret_cast:底层使用,瞅不明白。

在使用场景上都是将一个指针赋值给另一个指针时,由于类型不同导致的需要强制转换类型时使用。比如:

base_class_ptr = dynamic_cast<base_class*> son_class_ptr;//其他几种也都是这种场景。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: