【求職】完美世界 C++方向面經

完美世界

C++方向面經

第一篇

**一面 2017-4-28 **

1、聊項目,問 APP 是自己做的 demo 還是和公司對接的。問負責什麼部分,做了什麼工

2、是否有做過渲染的工作?有沒自己做過小遊戲

3、玩過什麼遊戲?聊了一點遊戲方面的經驗

4、如果求一個 32 位整數中二進制 1 的個數。又問時間複雜度

5、編程之美的水王問題。找到數組中出現次數超過等於一半的那個 ID。他問那等於一半的

怎麼辦

6、25 匹馬求最快的 5 匹馬,有 5 個賽道

7、連連看問題,如何判斷兩個相同圖片可以消除掉

**二面 2017-4-28 **

1、問是哪裏人,爲什麼想來北京

2、意向工作城市排名

3、玩過什麼遊戲?玩遊戲氪金嗎

4、杭州有那麼多大公司,你有沒有投簡歷呢?有什麼公司

5、分別問每個公司面試到幾面啦?感覺如何啊

6、如果阿里雲,網易遊戲,完美都要你,你怎麼抉擇?如果阿里雲和完美要你,你怎麼抉

7、你覺得你花時間最多的是?花的最多錢的是

8、你覺得遇到最大的挫折是

9、朋友和老師都怎麼評價你的。給三個形容詞

10、期望的薪資水平,得知問的是實習工資

11、家人在哪工作,支持你來北京嗎

12、有沒女朋友?女朋友會支持你來北京嗎

第二篇

**一面 2017-9-28 **

1、問了內存分配

2、stl 數據結構

3、做了幾道基礎概率題

4、做了幾道基礎動歸題

5、都比較快的給出瞭解決方法

6、反正就是不斷的做題

**二面 2017-9-28 **

1、問了項目,深挖了一下

2、問了問最近寫的混合邏輯時鐘的東西,討論了一下

3、問了 static 和 const 的使用

4、問了 define 和 const 的區別和用法

5、問了如何理解多態和重載,寫代碼,使用場景

6、問了一道算法題,偏智力題一點,提示了兩次,我給出兩三種解決辦法,他都不怎麼滿

第三篇

**一面 2018-9-12 **

1、講項目,講的很細

2、三次握手,四次揮手,滑動窗口,流量控制,擁賽控制

3、四次揮手時被動斷開連接一方一直收不到對方的最後一個 ack 一直收不到怎麼辦

4、udp,和 tcp 區別,udp 用在哪

5、http 協議,畫一下請求報頭,響應報頭

6、c++類的內存對齊,虛表,虛指針,虛表存在哪,析構函數爲什麼通常寫成虛函數,繼

承以後子類的對象模型

7、類裏定義一個 public a,和 private b,在內存裏是什麼樣的,是連續放置的嚒,還是

說加了一些別的什麼東西

8、講一下 vecto,擴容,map 和 unorder_map 區別

9、手寫一個 atoi

10、遊戲服務器需要考慮什麼

11、堆和棧的區別

**二面 2018-9-12 **

1、講項目

2、做過一些別的遊戲項目沒,我說網絡五子棋

3、面試官說添加一個規則叫判斷活三子兒,意思就是三個子兒連成線了,如果不去堵的話,

可能會導致一個對方必勝的局面,這個是不一定的,怎麼去判斷,思路講清,講實現,落實

到編程

4、判斷一個 32 位的數字裏面二進制序列有多少個 1,我從最基本的開始講,然後從時間

上優化

5、如果給你百萬量級的隨機數去判斷 1 的個數,怎麼提高效率,給你足夠大的空間,你可

以提前做充足準備,我就想到了用哈希表把所有的結果存起來,你給我隨機數,我從哈希表

裏找結果,隨機數就是下標,這個東西講了很久,講到怎麼優化哈希表的空間,用位圖

6、cpu 訪問內存其實花費時間也不少,因爲涉及到總線什麼的,查詢百萬次時間還是會慢,

怎麼辦

7、我想到了高速緩存,但是這塊實在不太瞭解,不敢說,面試官就提醒了我高速緩存,然

後問怎麼用

8、類裏定義一個 public a,和 private b,在內存裏是什麼樣的,是連續放置的嚒,還是

說加了一些別的什麼東西,我如果拿到 b 空間的地址,我可以直接修改數據嚒

9、哈希表原理,哈希衝突解決辦法

第四篇

**一面 2018-9-19 **

1、自我介紹

2、STL 容器講下

3、玩遊戲嗎?什麼遊戲

4、講一下紅黑樹

5、給了兩個類,求 sizeof,一個類是沒有成員變量,有七八個純虛函數還有一個靜態成員

函數;另外一個類是將上一個類的某一個純虛函數改成普通成員方法,求 sizeof

6、解釋代碼:一個派生類成員方法 func 中,通過類作用域訪問基類的同名方法 func,問

類對象的變化,還有函數執行的過程,講到了函數調用棧幀空間的開闢和回退,順帶也講了

虛擬地址空間的佈局

7、虛函數的實現機制

8、項目,打開了我的 GitHub 上的項目源碼,爲什麼要做這個,學校的大作業還是畢設?你

負責了哪些模塊,具體講下,還負責了哪裏?用過數據庫沒?項目中用了 mysql,爲什麼

要使用數據庫,相比於文本文件有什麼好處

9、TCP 瞭解吧?cli 和 ser 建立連接後,cli 掛掉,ser 知道嗎?爲什麼?ser 怎麼才能知道

cli 掛了?(心跳檢測?);那如果 cli 掛了,又重連,能成功嗎?爲什麼

10、寫一下單例模式

11、我看你項目做的都是 server 端的,如果你去公司讓你做客戶端,可以嗎

12、什麼時候能來實習

**二面 2019-9-1 **

1、自我介紹,家是哪裏的

2、爲什麼不考研

3、爲什麼投遞我們公司,你還面了哪些公司,或者說你投了哪些公司

4、玩遊戲嗎?玩哪些?手遊有哪些

5、項目是出於什麼目的做的?爲什麼會做這個業務而不是其他,是有學長給你們介紹過這

些東西嗎

6、對薪資有什麼要求

7、什麼時候能來實習

8、有女朋友沒,也是明年畢業嗎?哪個學校?那她畢業了會去哪個城市,你怎麼做

9、我看你項目做的都是 server 端的,如果你去公司讓你做客戶端,可以嗎

10、還有什麼想問的

第五篇

**一面 2019-9-1 **

1、sizeof 空類的大小?爲什麼

2、C++的友元函數

3、解釋 TCP 的滑動窗口

4、四次揮手時被動斷開連接一方一直收不到對方的最後一個 ack 一直收不到怎麼辦?會一

直處於 last-ack 的狀態

5、手撕 atoi。輸入字符串,輸出數字,考慮負號,正整數部分,小數點,小數部分,科學

計數法部分 eE

6、定位 new。placement new

7、const 成員函數的作用。mutable 關鍵字的作用

8、什麼情況下,析構函數可以不聲明爲虛函數

9、重寫和重載有什麼區別

10、malloc 和 new 的區別

11、TCP 三次握手,四次揮手。過程和原因

12、遊戲經歷

**二面 2019-9-1 **

\1. 多繼承情況下的內存佈局?爲什麼會有自適應偏移?C 繼承自 A 和 B,B* pb = &c;和

A* pa = &c;得到的兩個指針值是不相等的,爲什麼?哪位大佬能回答這個問題,我查了很

久都沒查到

\2. 某個點在一個扇形內部

3、a,b 向量的和 c,和敵人連接的向量 d,c 點乘 d,得到的標量如果是負值,則方向相

反,如果是正值,則方向相同。向量的點積和向量長度的比值,得到 cos(theta)。再結合前

面的方向,得到實際的向量 c 與向量 d 的夾角,判斷角度是否符合要求

4、再判斷向量 d 長度是否小於向量 a/b 的長度

5、對遊戲開發的理解?關於遊戲開發,你知道哪些?當然是指的技術部分

第六篇

**一面 2017-4-22 **

1、聊項目,問 APP 是自己做的 demo 還是和公司對接的。問負責什麼部分,做了什麼工

2、是否有做過渲染的工作?有沒自己做過小遊戲

3、玩過什麼遊戲?聊了一點遊戲方面的經驗

4、如果求一個 32 位整數中二進制 1 的個數。又問時間複雜度。又問有沒更快的。又問那

32 位數組用不了,還有別的更快的方法嗎

5、編程之美的水王問題。找到數組中出現次數超過等於一半的那個 ID。他問那等於一半的

怎麼辦呢?他問如果 ID 是 32 位整數怎麼辦

6、25 匹馬求最快的 5 匹馬,有 5 個賽道

7、連連看問題,如何判斷兩個相同圖片可以消除掉

**二面 2017-4-22 **

1、問是哪裏人,爲什麼想來北京

2、意向工作城市排名

3、玩過什麼遊戲?玩遊戲氪金嗎

4、杭州有那麼多大公司,你有沒有投簡歷呢?有什麼公司

5、分別問每個公司面試到幾面啦?感覺如何啊

6、如果阿里雲,網易遊戲,完美都要你,你怎麼抉擇?如果阿里雲和完美要你,你怎麼抉

7、你覺得你花時間最多的是?花的最多錢的是

8、你覺得遇到最大的挫折是

9、朋友和老師都怎麼評價你的。給三個形容詞

10、期望的薪資水平,得知問的是實習工資

11、家人在哪工作,支持你來北京嗎

12、有沒女朋友?女朋友會支持你來北京嗎

第七篇

**一面 2019-10-31 **

\1. 虛函數的實現,要極其具體的過程,例如虛函數指針在不同對象的指向

2、vector 迭代器失效的情況

3、算法題的思路

4、項目具體介紹,包括缺陷和改進

**二面 2019-10-31 **

1、簡單考察了一下技術。問了差不多十個小問題,具體記不太清楚

2、學過 mysql,詢問有沒有在項目中用到,sql 語句考察之前面過暢遊?那邊的情況

3、喜歡玩什麼遊戲,對遊戲的認識,聊聊遊戲

4、不是計算機專業,平時如何學習的

5、最喜歡的書

6、目前的 offer 情況

7、對戶口有要求嗎

第八篇

**一面 2019-10-31 **

1、stl 講一下

2、由於我提到了 vector,他問 vector 擴容爲什麼是 1,5 或者 2 倍,網上有解答

3、由於我提到 map,他讓我說一下 operator[]如何實現的

4、由於我前面答得不好,他讓我說一下多態

5、然後問 vector 和 list 區別

6、你知道如何設計一個遊戲角色?讓他的血被所有對象看到

7、你說暴露變量,不太安全,有沒有其他方法

8、先到這,後面再給你打電話,你要問什麼

**二面 2019-10-31 **

1、講一下項目

2、全程圍繞項目討論,手撕細節

3、問你們項目是不是學校老師帶的

比特職讀會官網: https://bitzhidu.com比特職讀會—專注 IT 學子就業的職業讀書會

4、我說不是,他說肯定是

第九篇

**一面 2019-7-31 **

1、自我介紹

2、平常玩什麼遊戲

3、項目。重點探討項目,問的很細,給我提出建議

4、手寫代碼,一個整形比特位有多少個

5、在上一個問題的基礎上,假設現在內存無限大,準備時間無限,有 42 億個隨機數,如

何提高效率

6、如果內存不是無限大,準備時間有限,如何優化

7、一個類裏定義 public int a 與 private int b,在類裏 a 與 b 的內存模型是怎樣的

8、上一個問題中,運行時利用地址可否訪問到 b,並修改

9、TCP 四次揮手過程,講講 CLOSE_WAIT

10、停止等待 ARQ 與連續 ARQ

哈希衝突解決方式

**二面 2019-7-31 **

1、瞭解沒了解過 MD5,講講

2、MD5 衝突解決方式

3、定義兩個類 A,B。C 同時繼承 A,B。如果 A,B 兩個類都有一個 int,此時將 C* c

= new C。這個時候,將 c 強轉成 A* 是否可以正常訪問類 A 的 int。如果強轉成 B* 呢?

可不可以進行訪問 int

3、map 與 unordered_map 的區別,使用場景

4、講講純虛函數

第十篇

**一面 2019-7-31 **

1、講項目,講的很細

2、三次握手,四次揮手,滑動窗口,流量控制,擁賽控制

3、四次揮手時被動斷開連接一方一直收不到對方的最後一個 ack 一直收不到怎麼辦

4、udp,和 tcp 區別,udp 用在哪

5、http 協議,畫一下請求報頭,響應報頭

6、c++類的內存對齊,虛表,虛指針,虛表存在哪,析構函數爲什麼通常寫成虛函數,繼

比特職讀會官網: https://bitzhidu.com比特職讀會—專注 IT 學子就業的職業讀書會

承以後子類的對象模型

7、類裏定義一個 public a,和 private b,在內存裏是什麼樣的,是連續放置的嚒

8、講一下 vecto,擴容,map 和 unorder_map 區別

9、手寫一個 atoi

10、遊戲服務器需要考慮什麼

11、堆和棧的區別

**二面 -2019-7-31 **

1、講項目

2、做過一些別的遊戲項目沒

3、面試官說添加一個規則叫判斷活三子兒,意思就是三個子兒連成線了,如果不去堵的話,

可能會導致一個對方必勝的局面,這個是不一定的,怎麼去判斷,思路講清,講實現,落實

到編程

4、判斷一個 32 位的數字裏面二進制序列有多少個 1,我從最基本的開始講,然後從時間

上優化,如果給你百萬量級的隨機數去判斷 1 的個數,怎麼提高效率,給你足夠大的空間,

你可以提前做充足準備

5、類裏定義一個 public a,和 private b,在內存裏是什麼樣的,是連續放置的嚒,還是

說加了一些別的什麼東西,我如果拿到 b 空間的地址,我可以直接修改數據嚒和一面一摸

一樣的問題

6、哈希表的原理,怎麼解決哈希衝突

求職必備刷題官網:https://github.com/bennyrhys/interview
【更多互聯網公司筆試面試真題請關注“讓我遇見相似的靈魂”公衆號】

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