第二課——引用
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年皮克西製成一台旋轉式直流發電機。此後科學家的研究則主要在提高利用率 減小體積 減少能量消耗 精確控制等方向。但是直流電機卻有著一些固有的缺點,電壓低時傳輸損耗大,高壓直流電機製造困難,單機容量大時難以實現控制,於是...