zoukankan      html  css  js  c++  java
  • 《C++ Primer Plus》第15章 友元、异常和其他 学习笔记

    友元使得能够为类开发更灵活的接口。类可以将其他函数、其他类和其他类的成员函数作为友元。在某些情况下,可能需要前向声明,需要特别注意类和方法声明的顺序,以正确地组合友元。
    潜逃类是在其他类中生命的类,它有助于设计这样的助手类,即实现其他类,单必须是共有接口的组成部分。
    C++机场机制为处理拙劣的编程事件,如不适当的I/O失败等,提供了一种灵活的方式。引发异常将终止当前值性的函数,将控制权传给匹配的catch块。catch块紧跟在try块的后面,为捕获异常,直接或间接导致异常的函数调用必须为与try块中。这样程序将执行catch块中的代码。这些代码试图解决问题或终止程序。类可以抱汉潜逃的异常类,潜逃异常类在相应的问题被发现时将被引发。函数可以包含异常规范,指出在该函数中可能引发的异常,但C++11摒弃了这项功能。未被捕获的异常(没有匹配的catch块的异常)在默认情况下将终止程序,以外异常(不予任何异常规范匹配的异常)也是如此。
    RTTI(运行阶段类型信息)特性让程序能够检测对象的类型。dynamic_cast运算符用于将派生类指针转换为基类指针。其主要用途是确保可以安全地调用虚函数。typeid运算符返回一个type_info对象。可以对两个typeid的返回值进行比较,以确定对象是否为特定的类型,而返回的type_info对象可用于获得关于对象的信息。
    与通用转换机制相比,dynamic_cast、static_cast、const_cast和reinterpret_cast提供了更安全、更明确的类型转换。

  • 相关阅读:
    第三章预习
    预习非数值数据的编码方式
    预习原码补码
    第三章——运算方法和运算部件预习
    预习非数值数据的编码方式
    预习原码补码(习题+预习)
    预习非数值数据的编码方式
    预习原码补码
    10.21
    10.7作业
  • 原文地址:https://www.cnblogs.com/moonlightpoet/p/5671087.html
Copyright © 2011-2022 走看看