linux c/c++面试知识点整理(八)
发布日期:2021-05-08 05:59:32 浏览次数:8 分类:精选文章

本文共 528 字,大约阅读时间需要 1 分钟。

以下是优化后的内容:

能否从构造函数调用虚函数?可以,但虚函数会调用基类的虚函数。

断点在main()第一行,程序崩溃可能是什么原因?全局变量的构造函数失败。

如何处理析构函数失败并抛出异常?最好不要抛出,若必须,应在内部处理。

如何处理构造函数失败?抛出异常,动态分配内存前释放。

friend是否违反封装原则?是的,因为友元函数可以访问类的私有成员。

脏数据是什么?是指数据被删除,但其他用户未刷新使用时依然访问了该数据。

模板特例化是指将类型替换到已知类型,实现模板功能的部分特性,若只替换一个参数,则为局部特化。

STL仿函数需要重载哪个操作符?需要重载operator(),仿函数通过小括号调用指定的函数或对象。

前置操作符和后置操作符有什么区别?前置操作符先改变自身,再参与表达式运算,可作为左值;后置先参与计算,再改变值,返回右值,不能作为左值使用。前置效率较高,因为后置会产生临时对象。

fork后父子进程的内存布局如何?子进程获得父进程数据空间、堆、栈的副本,共享只读部分。写时复制技术用于处理修改,内核会为修改区域制作临时副本。fork执行顺序由sched_child_runs_first决定,值为0时父进程先执行,否则子进程先执行。

上一篇:多线程同步
下一篇:linux c/c++面试知识点整理(七)

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年03月20日 22时56分38秒