C++ 面试知识总结
1、C 和 C++的區(qū)別? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
????? C面向過程
? ? ? C面向?qū)ο?#xff0c;三大特點(diǎn)封裝、繼承、多態(tài)
? ? ? ? ? ? ? ? ? ? ? ? ?封裝性:隱藏對象屬性和實(shí)現(xiàn)細(xì)節(jié),僅對外提供公共的訪問方式,代碼模塊化,代碼重用
?????????????????????????繼承:擴(kuò)展已存在的模塊,代碼重用
? ? ? ? ? ? ? ? ? ? ? ? ?多態(tài):接口重用,即一個(gè)接口,多種實(shí)現(xiàn)(不同實(shí)例對象調(diào)用相同的方法得到不同的行為)
2、虛析構(gòu)函數(shù)
????? 子類繼承父類,基類的指針或引用指向派生類(A *p = new B),此時(shí)先調(diào)用基類構(gòu)造函數(shù),然后再調(diào)用子類的構(gòu)造函數(shù),當(dāng)析構(gòu)p時(shí),會先調(diào)用B的析構(gòu)函數(shù),再調(diào)用A的析構(gòu)函數(shù)。如果不是虛析構(gòu)函數(shù),程序只調(diào)用基類的析構(gòu)函數(shù),這樣會導(dǎo)致內(nèi)存泄露,造成系統(tǒng)崩潰。
3、hash_map擴(kuò)容機(jī)制
https://blog.csdn.net/runrun117/article/details/80249556
https://www.jianshu.com/p/f6730d5784ad
4、strcpy 和 memcpy 的區(qū)別
https://www.cnblogs.com/stoneJin/archive/2011/09/16/2179248.html
5、僵尸進(jìn)程、孤兒進(jìn)程、守護(hù)進(jìn)程
https://blog.csdn.net/gogokongyin/article/details/51340432
6、select、poll、epoll 區(qū)別
https://blog.csdn.net/shenya1314/article/details/73691088
https://blog.csdn.net/will130/article/details/51072819
7、static作用(修飾函數(shù)、局部變量、全局變量)
http://www.cnblogs.com/stoneJin/archive/2011/09/21/2183313.html
8、fork、vfork、clone
https://blog.csdn.net/gogokongyin/article/details/51178257
https://yq.aliyun.com/articles/48614
9、虛擬內(nèi)存
https://blog.csdn.net/qq_30137611/article/details/66478426
總結(jié)
以上是生活随笔為你收集整理的C++ 面试知识总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JEECG社区第六期架构培训班报名
- 下一篇: C++ 类型转换(强制类型转换)