2020年騰訊實習生C++面試題&持續更新中(3)
2020年騰訊實習生C++面試題&持續更新中(3)
hello,大家好,我是好好學習,天天編程的天天。
來給大家大家分享騰訊實習生面經了。
天天希望大家看到面經後一定要做充分的準備,結合自己掌握的知識,把面試中的每一個問題都深入研究,找到面試官提問的重點,找面試管想要你回答的要點。並可以將自己整理的答案,整理處理,按照一定的邏輯分點作答。
比如:
Q: 請你講一下static這個關鍵字的使用你一定要思考一下,組織一下自己的語言,然後給出面試官想要的答案。
A:static在C語言和C++的用法大致有以下幾種:
- static修飾局部變數
- static修飾全局變數
- static修飾函數
- C++中static修飾類的成員變數
- C++中static修飾類的成員函數
然後結合以上的5個知識點,給面試官,再展開講解:
比如:static修飾局部變數的時候,其實一個非static修飾的局部變數是放在記憶體的棧空間上的,但是被static修飾之後就是靜態的局部變數了,該變數就存儲到記憶體的靜態區(數據段),放在靜態區的數據的生命周期和程式的生命周期一致,所以出了作用域也不會直接銷毀。
就按照這個思路就把剩下的幾點做以補充!這樣的話,我們的小夥伴在複習知識的時候就得深入複習,查閱資料。
好了方法論就講到這裡,接下來繼續分享面試題啦~~~
2020年騰訊C++實習面試真題
一面
- TCP三次握手老問題,四次揮手time-wait
- 多進程多執行緒
- 資料庫全連接內連接
- STL各種容器的底層實現
- 多態,虛函數
- C++關鍵字static
- 快排的過程以及時間複雜度,如果有大量重複元素如何改進
- 概率題,鬥地主中,地主拿到王炸的概率是多少
- linux操作,cp,grep
- gdb會不會,不會,都是用vs調試的
二面
- map、unordered_map、multimap、unordered_multimap的區別?
- vector中reserve和resize的區別?
- C++11智慧指針?
- redis、memcached、rocksdb、mysql的區別?
- 假設記憶體空間有限,如何找到不重複元素?
三面
- 小根堆計時器是怎麼樣的機制
- 優先隊列和map的區別是什麼
- vector的內部結構
- 如何避免vector的動態擴容
- vector越界訪問會怎麼樣
- 紅黑樹的規則
- 紅黑樹的增刪改查的時間複雜度
- 往map裡面增加或刪除元素是怎麼實現的
- 智慧指針是自己實現的嗎
- 如何實現智慧指針
- 智慧指針的引用計數如何確保執行緒安全
- 怎麼實現原子操作
- RAII機制具體是什麼含義
- 日誌系統的相關問題
- 執行緒池是怎麼使用的
- 長連接過程中執行緒一直持有連接對象嗎
- 有用過什麼資料庫
- 資料庫的欄位類型是如何設計的
- 用的是什麼資料庫引擎
- Innodb和MyISAM的區別
- varchar最大長度是多少
- varchar如果長度超過了怎麼辦
- Linux常用的命令
- 壓測如何查看在哪裡達到瓶頸
本文就分享到這裡啦,喜歡的話就點個贊吧。