c 面試題雜項整理

2021-09-28 13:47:43 字數 1099 閱讀 7404

static用法及優點:

用法:不能在類宣告中初始化,不能通過建構函式初始化,在定義時初始化

1:static 成員 在類的作用域,避免與其他類成員,全域性變數衝突。

阻止乙個類的例項化:

純虛函式,建構函式宣告為public

在類內部建物件,不允許在外部建物件

main()執行前做了什麼

全域性物件的建構函式

用_onexit

()註冊的函式

// atexit()註冊的函式在main退出後執行

什麼情況只能用建構函式初始化,不能用賦值初始化

const成員,引用成員
基類的析構是虛函式原因

指標呼叫物件,析構時執行的是指標類的析構函式。虛函式才能通過覆蓋使其析構時調子類虛函式
構造不能是虛函式原因

虛函式呼叫:是一種在只有部分資訊知道的情況下工作的機制,構造需要知道物件準確的型別。
空指標與懸垂指標

空指標:nullptr,null

垂懸指標:指標指向的空間delete後。指標就是垂懸指標

new+delete與malloc+free

malloc更具大小分匹配空間,不初始化。

new更具物件分匹配空間,預設初始化。

什麼是型別安全

變數型別不能隨意轉換。

int a =

2.33

;//可以執行 , 所以c++不是型別安全的

引用做返回值的好處與規則

記憶體中不產生返回值的副本。

正因如此,不可以返回區域性變數的引用。//子函式結束,區域性變數清空,引用無效了。

不可以返回子函式內malloc的記憶體的引用。//子函式結束,雖然記憶體沒有釋放但,指向記憶體的指標釋放了,引用1也就無效了。

本質:函式引數為引用時,函式的棧不需要額外儲存引用,實際上什麼也不傳,而是直接就用ebp和偏移去找。

面試題雜項

1,9月6日,網新恒天2014校園招聘筆試程式設計題 已知memcpy的函式為 void memcpy void dest const void src size t count 其中dest是目的指標,src是源指標。不呼叫c c的memcpy庫函式,請編寫memcpy。點評 老題,參 如下voi...

C 面試題整理

1.c 中類是否支援多繼承?請說明原因。答 不支援,需要用介面來實現多繼承 2.我們都知道乙個類可以有多個建構函式,並且c 會在我們建立類的時候預設的提供乙個無參的建構函式,當我實現了另外乙個有引數的建構函式的時候,我還能呼叫無引數的建構函式嗎?請說明原因。答 不能,因為一旦你實現了乙個建構函式,c...

C 面試題精簡整理

c 中完全可以刪除 struct 關鍵字,保留 struct 關鍵字是為了相容c。class和struct地唯一區別 class預設域是 private,struct 預設域是 public。現在c 程式設計常使用struct作為乙個組合。例如 struct combination new的底層是由...