c++primer plus 629页
引发异常时编译器总是创建一个临时拷贝
630页
既然throw语句将生成副本,为何代码中使用引用呢?毕竟,将引用作为返回值的通常原因是避免创建副本以提高效率。答案是,引用还有另一个重要特征:基类引用可以执行派生类对象。假设有一组通过继承关联起来的异常类型,则在异常规范中只需列出一个基类引用,他将与任何派生类对象匹配。
catch块的排列顺序应该与派生顺序相反
博客园 © 2004-2026 浙公网安备 33010602011771号 浙ICP备2021040463号-3