『C++』2020年最新阿里C/C++ Linux后台开发面试题及答案( 四 )


7) 当类中至少包含一个虚函数时 , 才需要将其析构函数设置为虚函数 。 不要在构造/析构函数中调用虚函数 。
8) 以行为为中心的类设计 , 对外的public函数放在前面 , 需要继承的protect虚函数紧随其后 , 再后面是private的虚函数、普通函数以及成员变量 。
9) 语法的背后含义是语义 , 接口设计要有明确的语义 , 不可模棱两可、职责不清 。
10) 如底层发生异常 , 则需要逐级上报 , 直到有能力处理此异常的层级来处理 。 如果程序都没处理 , 则会被C++系统捕获并终止程序运行 。 异常可以将发生错误和处理错误分离 。
11) 一般以传值来抛出异常 , 以 const 引用来捕获异常 , 不涉及到异常对象的清理工作 , 无对象切割问题 , 如本层级处理后还需要继续抛出异常 , 可调用throw来 。
12) 优先使用shared_ptr , 它内部工作原理是引用计数 , 线程安全 , 支持扩展 , 推荐使用 。
由于篇幅有限 , 今天就分享到这里 , 需要更多2020最新面试题(阿里系、腾讯系、百度系)可以关注+后台私信“资料” , 免费分享