一、基礎知識
1、基本語言
1、說一下static關鍵字的作用
傳送門:
個人理解:a.所有未加static的全域性變數和函式具有全域性可見性。加了static,就會對其原始檔隱藏。而對於函式來講,static的作用就僅僅侷限於隱藏。
b.保持變數內容的持久。(static變數中的記憶功能和全域性生存期)程式開始時的初始化將靜態儲存區中的全域性變數和static變數,而static控制其可見範圍。說到底還是隱藏。
如果作為static區域性變數在函式內定義,它的生存期為整個源程式,但是其作用域仍與自動變數相同,只能在定義該變數的函式內使用該變數。
退出該函式後, 儘管該變數還繼續存在,但不能使用它.
c.將變數初始化為0(如稀疏矩陣的初始化)。
d.c++中的類成員宣告static: 1.類的靜態成員函式屬於類而非類的物件,沒有this指標,所以僅能訪問類的靜態資料和靜態成員函式。
2.不能將靜態成員函式定義為虛函式。
3.靜態資料成員必須被初始化,因為其是靜態儲存的。
4.靜態成員初始化一般在類體外進行,前面不加static,初始化時不加成員訪問許可權控制符(public private等)
5.節省子類對父類靜態成員的訪問時間,節省了子類的記憶體空間。
6.在子類定義乙個和父類相同的靜態變數可以遮蔽父類的影響(name-mangling)
2.c++和c的區別
傳送門:
3.c++中四種cast轉換
傳送門:
4.判斷乙個點在三角形中並用**實現
傳送門:
5.怎麼判斷乙個數是2的倍數,求乙個數中有幾個1,說一下思路並手寫**
我猜: 最蠢的辦法可以第乙個模2為0則是,第二個模10然後判斷是否為1,搞個計數器來計數就行/或:如果是求二進位制表達中有幾個1的話,可以用位運算,和1做&運算。
6.stl中容器的底層實現
面試題4 相關題目
題目 有兩個排序陣列a1和a2,內存在a1後面有足夠的空間容納a2。實現乙個函式,把a2中的數字插入到a1,並且所有的數字是排序的。示例 includeusing namespace std 兩個有序陣列a1和a2,a1後面有足夠的記憶體容納a2,將a2插入到a1中,使結果有序 bool inser...
劍指offer 面試題21 相關
題目 設計包含min函式的棧,pop push min 的時間複雜度均為o 1 自己所寫 如下 寫 棧 的 還是有些不熟練!include using namespace std const int max 100 class stack stack stack stack stack bool s...
Webpack相關面試題整理
1.gulp grunt 與 webpack的區別是什麼?grunt 與 gulp grunt和gulp屬於一類的都是構建工具,只是grunt是根據配置來的,gulp是採用 優於配置的原則,gulp的效能要比grunt的效能要高,它們可以執行指定的任務。webpack的特點 webpack 是目前最...