C++考題

Step 1

  • 常見的問題 什麼是類,什麼繼承編程

  • new和malloc有什麼區別segmentfault

  • 什麼是虛函數,什麼是虛繼承設計模式

Step 2

Step 3

  • 主要是一些邊角的語法或者是不常見的問題操作系統

  • 逗號表達式,位域設計

  • 初始化列表的異常怎麼捕獲

  • 對於常見的主流編譯器,寫不寫inline有什麼影響

  • 完美轉發

  • 怎麼在編譯器判斷一個類中有沒有定義某個特定的方法

  • 構造函數中調析構函數會有什麼結果

級別

  • 0級:掌握常見C++語法和語言構造,可以順溜地寫清楚各類語言構造(不少小白鼠死在這裏)

  • 1級:掌握基本的編程範式:面向過程、面向對象、泛型編程、以及C++11/14支持的函數式編程

  • 2級:清楚編譯器在 後面幹了什麼(compiler under the hood-考驗功力的時候到了)

  • 3級:清楚運行時內存模型(memory under the hood)

  • 4級:對經典庫(包括但不限於STL, BOOST, Folly)應用熟練,關鍵原理清晰,掌握設計模式

  • 5級:熟悉至少一個操做系統經常使用API和內核,調試工具和方法

  • 6級:有清晰的機器和系統模型:CPU, Memery, Cache, GPU, Disk, I/O, Process, Thread, TCP/IP...

  • 7級:有必定系統級應用開發經驗,被系統級應用的性能、內存、規模等問題折磨過,並解決過...

  • 8級:從頭至尾設計過一個C++庫、或框架,並被必定量級的應用使用過

  • 9級:設計並開發過系統級、高性能、大規模的軟件系統

  • 10級:成爲Bjarne Stroustrup,設計一門語言

相關文章
相關標籤/搜索