8 13 刷題 複習 知識點集合

2021-08-22 19:21:33 字數 1567 閱讀 9845

1.

//把資料型別去掉了看 簡單很多的

指標常量

指標常量:顧名思義它就是乙個常量,但是是指標修飾的。 

格式為:

int * const p //指標常量
在這個例子下定義以下**:

int a,b;

int * const p=&a //指標常量

//那麼分為一下兩種操作

*p=9;//操作成功

p=&b;//操作錯誤

因為宣告了指標常量,說明指標變數不允許修改。如同次指標指向乙個位址該位址不能被修改,但是該位址裡的內容可以被修改

常量指標:如果在定義指標變數的時候,資料型別前用const修飾,被定義的指標變數就是指向常量的指標變數,指向常量的指標變數稱為常量指標,格式如下

const int *p = &a; //常量指標
在這個例子下定義以下**:

int a,b;

const int *p=&a //常量指標

//那麼分為一下兩種操作

*p=9;//操作錯誤

p=&b;//操作成功

因為常量指標本質是指標,並且這個指標是乙個指向常量的指標,指標指向的變數的值不可通過該指標修改,但是指標指向的值可以改變。

指向常量的指標常量該怎麼寫? 

答案:

const int * const b = &a;//指向常量的指標常量
2.下面**的輸出結果是()

intmain()

elseif(pid==0)

}

1.父子程序中輸出的num相同,num位址不相同
2.父子程序中輸出的num不同,num位址相同
3.父子程序中輸出的num相同,num位址也相同
4.父子程序中輸出的num不同,num位址不相同
解析:2

剛剛fork出來不止虛擬位址一樣,實體地址也一樣。當程序發生分歧時,即修改此變數時,才會分配不同的實體地址,也就是copy-on-write,寫時複製。

3.

#include using namespace std;

class b0//基類bo宣告

};class b1 :public b0//公有派生

};class d1 : public b1//公有派生

};void fun(b0 ptr)//普通函式

int main()

輸出結果:b0::display0 b0::display0 b0::display0
解析:fun函式,傳入的引數是乙個類的物件,這樣,派生類作為引數傳入的時候,會自動的型別轉換為基類物件,這樣,display就只是執行基類的函式了。選b0::display() b0::display() b0::display()

刷題知識點

加速輸入輸出流,放到 頭部 static const auto speedup 陣列初始化容器 int a vector b begin a end a map操作 include include using namespace std int main void else 刪除 iterator ...

刷題小知識點

二維陣列的指標寫法 include using namespace std int main for int i 0 i 3 i cout a 1 2 endl system pause return 0 char a 10 則最後乙個必須是 0 前面9個數 char a 多維陣列最後一維必須有值。...

python leetcode刷題知識點筆記2

第一種方法 bfs廣度優先搜尋,使用雙端佇列deque 因為效能比另外兩種queue好得多 在大迴圈內對二叉樹的每個層做一次遍歷,range len queue 使只遍歷當前的層,每次大迴圈ans加1。由於每個節點僅訪問一次,所以時間複雜度o n import collections class s...