面試沖刺
介于馬上要去面試了,還是惡補一下cpp吧。
- 虛函數表點這
- 虛析構函數點這
- map
- sort/qsort點這
- lockstep
- ecs
- 使用memset初始化一個類會導緻類中的指針和虛函數表出現問題。相關連結
- 使用
初始化a數組不會達到預期的效果,因為memset會把每個位元組指派為1就會變成16843009。memset(a,1,sizeof(a))
- sizeof會在編譯期間轉化為相應的數字(雖然聽說某标準表示,為了配合動态數組有些可以在運作時計算),是以請不要使用sizeof計算函數指針類型參數的大小,會傳回一個指針的長度,而不是這個指針指向的位址(數組,結構體,類)的長度。
- sizeof會計算字元串末尾的
,而strlen不會.\0
- vector增加新元素時可能會發生c儲存位置的變化,就是整個vector位置發射了移動。
- C++常量折疊點此
- const修飾的變量在c中表示為隻讀,而在C++中表示為常量.
- const初始化常量的同時要指派。
- ,(逗号運算符)優先級最低
- 結構體的對其這裡
- virtual 函數是動态綁定,而預設參數值卻是靜态綁定。絕不重新定義繼承而來的預設參數值!
- C++默默編寫并實作了default構造函數、copy構造函數、copy assignment操作符,以及析構函數
- C++構造函數種類這裡
- 怎麼拒絕編譯器自動生成的函數,将函數聲明為private并且不予以實作。
- 如果class帶有任何virtual函數,它就應該擁有一個virtual析構函數。
- 4種類型轉換點這
- template
- explicit點這
- if else 與三目運算符12
- 短路求值1
- 函數入棧1
- 堆區,棧區1
- 虛函數表是放在記憶體哪個位置的?在每一個對象中嗎?
- 編譯成功、連結不成功可能是什麼情況
- 變長參數1
- 為什麼會有燙燙燙,屯屯屯。1
- 翻轉字元
- 中文編碼/編譯
- 類怎麼儲存1
- sizeof1不計算值2
- 右值引用
- memmove memcpy