《C 面試知識點》

2022-09-05 19:51:10 字數 388 閱讀 8010

【動態記憶體】

1. 由內建指標管理的動態記憶體(即new和delete管理動態記憶體),直到被顯式釋放之前它都是存在的。假設該指標變數被銷毀,那該記憶體將不會自動釋放(即所謂的「記憶體洩漏」)。

2. 可以用new返回的指標來初始化智慧型指標,但必須使用直接初始化的形式,而不能隱式轉換,因為接受指標引數的智慧型指標建構函式是explicit的。

3. 乙個用來初始化智慧型指標的普通指標,如果它指向動態記憶體,那麼將無需進行其他操作,因為智慧型指標預設使用delete來釋放它所關聯的物件(而new所分配的動態記憶體也是通過delete來釋放);如果它指向其他型別的資源,我們必須提供自己的操作來替代delete。

4. 

C 面試知識點

大概是一些面試可能會碰到的c 知識點。具體見effective c 3e 宣告使得名字為程式所知,而定義負責建立與名字關聯的實體 只在堆上 將建構函式和析構函式設定為保護,再定義兩個函式專門用於建立和銷毀物件。只在棧上 禁用class的new運算子,就是將class的operator new宣告為私...

C 面試知識點1

c 指標和引用的區別 相同點 1 都是對位址的概念 指標指向一塊記憶體,而引用是某塊記憶體的別名。不同點 1 指標本身就是乙個物件,允許對指標賦值和拷貝。引用僅是個別名 2 指標不需要在定義的時候賦初值,即可以為空,而且指標生命週期內可以先後指向幾個不同的物件。但是引用必須要初始化 不但不能為空而且...

C 面試知識點總結

巨集定義求最大值 define max x,y x y x y const與define區別define 在編譯前執行,無資料型別,僅僅在編譯前做替換const存在於程式中資料段,分配空間,有資料型別 與c中 define的異同 在c 中的用法 1.與c中 define相同的功能 字元替換 2.保護...