C 高頻面試題

2021-07-10 02:02:42 字數 553 閱讀 3355

字首式可以返回物件的引用,而字尾式必須返回物件的值所以導致在大物件產生時產生了較大的複製開銷,因此處理自定義型別的時候盡量使用字首式。

a ^= b;

b ^= a

;a ^= b;

相對於c,c++多了過載、內聯函式、異常處理,擴充套件了物件導向的設計內容:類、繼承、虛函式、模板。

c++並不是完全的物件導向,它也可以寫出面向過程的**,只是擁有物件導向的特性。

#define max(x,y) ((x) > (y) ? (x) : (y))

#define min(x,y) ((x) < (y) ? (x) : (y))

#define word_low(***) (byte)((word)(***)&255)

#define word_hi(***) (byte)((word)(***)>>8)

#define arr_size(a) (sizeof((a)) / sizeof((a[0])))

C 高頻面試題

malloc free是c語言的標準庫函式,new delete是c 的運算子。由於malloc free是庫函式而不是運算子,不在編譯器控制許可權之內。對於使用者自定義的物件而言,用maloc free無法滿足動態管理物件的要求。廢話 new是型別安全的,malloc不是。int a new fl...

c 高頻面試題

malloc free是c語言的標準庫函式,new delete是c 的運算子。由於malloc free是庫函式而不是運算子,不在編譯器控制許可權之內。對於使用者自定義的物件而言,用maloc free無法滿足動態管理物件的要求。廢話 new是型別安全的,malloc不是。int a new fl...

STL高頻面試題

vector的內部是使用動態陣列的方式來實現的,如果動態陣列的內部實現不夠用,就要動態的重新分配記憶體。然後把原陣列的內容拷貝過去。vector和陣列類似,擁有連續的記憶體空間,支援隨機的訪問,在中間進行元素的插入和刪除的操作時間複雜度是o n list是由雙向鍊錶實現的,只能通過陣列指標來進行資料...