本文首發(fā)于酷殼網(wǎng) http://coolshell.cn/articles/10478.html
先說說程序員(應(yīng)屆生)面試的一般過程,一輪面試(面對一到兩個面試官)一般是四、五十分鐘,面試官會問兩三個編程問題(通常是兩大一小),因此留給每個編程題的時間只有 20 分鐘。這 20 分鐘不光是寫代碼,還要跟面試官討論你的答案并解答提問,比如面試官拿過你的答案紙,問某一行代碼如果修改會有什么后果。因此真正留給在紙上或白板上寫代碼的時間也就 10 分鐘上下。本文給出了一個能用 10 分鐘時間在紙上寫出來且不會有錯的 String class,強(qiáng)調(diào)正確性及易實現(xiàn)(白板上寫也不會錯),不強(qiáng)調(diào)效率與功能完備。
本文的配套代碼位于 https://github.com/chenshuo/recipes/blob/master/string/StringTrivial.h。
全文:https://chenshuo.googlecode.com/files/CppEngineering.pdf