網易c++引擎編輯器開發面試總結

最近公司業務的事情很多,忙得焦頭爛額。另外國外新冠疫情開始越來越嚴重,美股也熔斷了,自己手頭的股票一直在跌,每天都是綠油油的一片,好在心態還在,畢竟也算是老韭菜了(捂臉),不聊了,直接進入主題。

下面開始總結一下網易引擎開發崗的面試。

這次的面試官有兩位,先是互相介紹自己,這裏贊一下,兩位面試官態度修養很好。然後由我開始講述項目經驗。

我的簡歷一共寫了4個項目,每個項目都有問到具體的業務流程和技術難點,問得比較細。大概半個小時後,開始進行技術上面的問答。

1、說一下c++基類和子類的構造函數執行順序。

:c++中,先構造基類,再構造派生類。

2、那析構函數呢?

:與構造函數相反,先析構派生類,再析構基類。

3、多態是怎麼回事

:可以通過基類指針調用派生類的接口。主要通過virtual關鍵字實現,在運行時動態綁定。

4、new一個對象後,它的數據成員的初始化順序?

:回答了自上而下,與聲明順序有關。

百度答案:

成員變量在使用初始化列表初始化時,與構造函數中初始化成員列表的順序無關,只與定義成員變量的順序有關。

不使用初始化列表初始化時,在構造函數內初始化,與成員變量在構造函數中的位置有關。

如果基類中和派生類中存在靜態變量,會優先初始化基類的靜態變量,再到派生類的靜態變量。然後到基類的成員變量,再到派生類的成員變量。

5、爲什麼基類的析構函數需要加上virtual?

:要想通過基類的指針釋放派生類對象,必須將基類的析構函數設置爲virtual。

詳情:https://blog.csdn.net/c_shell_python/article/details/104831498

6、c++模板用過麼,有哪幾種模板?

函數模板和類模板

7、c++11瞭解麼,用過哪些特性

for(int &t:array){} 、thread、auto等

8、說一下qt的信號槽原理

9、爲什麼信號emit出去後,槽能夠接收到?

10、如果是異步的呢,信號槽是如何聯繫的?

11、說一下在OSI模型中,有哪7層結構,順序如何?

應用層-->表示層-->會話層-->傳輸層-->網絡層-->數據鏈路層-->物理層

12、tcp和udp的區別

13、tcp是如何保證可靠的服務?

14、tcp三次握手和四次揮手分別介紹一下

問題12、13、14回答-->傳送門:https://blog.csdn.net/c_shell_python/article/details/96199834

15、tcp黏包是怎麼產生的,怎麼解決這個問題?

產生原因:TCP粘包就是指發送方發送的若干包數據到達接收方時粘成了一包,從接收緩衝區來看,後一包數據的頭緊接着前一包數據的尾。

解決方法一:可以每次發送同樣大小的包,,過小的包,後面部分用固定的字符'\0'進行填充

解決方法二:每個包都給有固定的格式,比如開始符,結束符

16、git用過麼,介紹一下使用git最複雜的一個指令

:目前使用sourcetree工具

17、在開發中,你是如何分析需求的,從哪些角度分析

:站在用戶,即最廣泛使用者的角度考慮問題。

18、平常喜歡看哪些技術書籍,能介紹一下內容麼

c++ primer plus、Effective C++

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章