liu-yonggang的專欄
阿新 • • 發佈:2018-12-21
一.C++部分
- 為什麼將解構函式定義成虛擬函式有什麼好處?
- class與struct 區別?
- C++智慧指標有那些?都有什麼區別
- static的作用?
- 拷貝建構函式作用? 如何宣告?
- C++11包括哪寫?
- 虛擬函式的底層是如何實現的?
- SOCKET有哪寫API?
- 什麼是菱形繼承?
- 什麼是RAII?
- explicit關鍵字的作用?
- volatia關鍵字的作用?
- 什麼是左值和右值?
- 在建構函式和解構函式中呼叫虛擬函式有什麼影響?
- C的struct和C++struct的區別?
- C++為什麼位元組對齊?
- C++ 強制型別轉換有哪幾個?都有什麼區別?
二.資料結構
- Vector和List區別?
- 為什麼Vector申請記憶體空間是2倍?
- 連結串列反轉?
- 如何判斷連結串列中有環?
- Map是如何實現的?
三.網路部分
- TCP和UDP區別?
- TCP三次握手的實現?
- 為什麼會有三次握手?
- TCP四次握手的實現?
- 為什麼會有time_wait狀態?
- 什麼是快重傳?
- 什麼是慢啟動?
- 如何用UDP協議實現可靠性?
- SSH免密原理?
四.設計模式
- 面向物件的設計原則?
- 常用的設計模式?
五.作業系統
- 如何檢視開啟檔案識別符號?
- 程序和執行緒間區別?