Coursera C 程式設計 第二週筆記

2021-09-08 02:29:27 字數 1840 閱讀 2004

第二課——引用

int n = 100;

const int &r = n;

r = 200; //編譯錯

n = 300; //沒問題

不能通過常引用去修改其引用的內容

第三課——const關鍵字

定義常量指標

int n, m;

const int *p = &n;

*p = 5; //編譯錯

n = 4; //ok

p = &m; //ok,常量指標可以指向其他內容(指標常量不可)

const int * p1;

int * p2;

p1 = p2; //ok

p2 = p1; //error

p2=(int *) p1; //ok,強制型別轉換

void myprintf(const char * p)

第三課——動態記憶體分配new、delete

int * p = new int;

* p = 5;

delete p;

delete p; //異常

int * p = new int[20]; //動態分配陣列

p[0] = 1;

delete p; //釋放陣列要加

第三課——函式過載多個函式名字相同,返回值相同,引數列表型別不相同、或引數個數不同。

注意:引數列表相同、函式名相同,僅返回值不同,為函式定義,不是過載。

第三課——函式預設引數

c++中定義函式時可以讓最右邊的連續若干個引數有預設值,呼叫時若相應位置不寫引數,引數預設為預設值。

目的:提高函式的可擴充性;若某個寫好的餓函式需要新增新的引數,而原先呼叫函式的語句未必需要使用新增的引數,則可以避免對原來呼叫函式語句的修改。

第四課——物件導向程式設計方法

物件的記憶體分配

訪問類的成員函式和成員變數

crectangle r1, r2;

r1.width = 5;

r2.init(3, 4);

crectangle r1, r2;

crectangle * p1 = & r1;

crectangle * p2 = & r2;

p1 -> width =5;

p2 -> init(3, 4);

crectangle r2;

crectangle & rr = r2;

rr.width = 5;

rr.init(3, 4); //r2的值變化

類成員的可訪問範圍類中,預設為私有成員;結構體中預設為共有

Coursera C程式設計高階 第二週

已知乙個整數陣列x,其中的元素彼此都不相同。找出給定的陣列中是否有乙個元素滿足x i i的關係,陣列下標從0開始。舉例而言,如果x 則x 3 3,因此3就是答案。輸入第一行包含乙個整數n 0 n 100 表示陣列中元素的個數。第二行包含n個整數,依次表示陣列中的元素。輸出為乙個整數,即滿足x i i...

Coursera C 程式設計 第七周作業

注意 總時間限制 1000ms 記憶體限制 65536kb 實現乙個三維陣列模版carray3d,可以用來生成元素為任意型別變數的三維陣列,使得下面程式輸出結果是 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,...

第二週筆記

直流電機 從1821年法拉第發現有電流流過的導線在磁場中會受到磁場力開始,到1831年皮克西製成一台旋轉式直流發電機。此後科學家的研究則主要在提高利用率 減小體積 減少能量消耗 精確控制等方向。但是直流電機卻有著一些固有的缺點,電壓低時傳輸損耗大,高壓直流電機製造困難,單機容量大時難以實現控制,於是...