国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

c++學習1

2019-11-11 02:50:09
字體:
來源:轉載
供稿:網友
(1)c++之父:本賈斯.斯特勞斯特盧普(2)c++語言的標準:c++98 c++03 c++11 c++14(3)c++集成開發工具(IDE):Eclipse CDT(linux環境)        VS(windows環境)(4)c++對c的升級(區別)     c++是一種面向對象的語言,而c是面向過程的語言(5)面向對象的三大特點:繼承,多態,封裝 因此c++作為面向對象的過程:繼承決定其維護性好,封裝決定其復用性強,多態決定其擴展性好(6)c++支持的編程范式    {     (1)過程式     (2)數據抽象     (3)基于對象     (4)面向對象式     (5)函數式     (6)泛型形式     (7)模板元形式    }     (7)設計模式     {      簡單工廠模式      工廠模式      代理模式      適配器模式     }(8)c++中int i可以在for中定義例子:for(int i = 0;;i++)i只在這個for循環里有用,防止對for循環之后的i產生未知的影響(9)c語言里register關鍵字存儲在寄存器中,無法取得register修飾的變量的地址     c++中register修飾的變量可以取得變量的地址(10)c語言中const修飾變量的內存空間可以修改,但無法通過變量名修改值‘      c++中修飾的變量不能訪問(包括內存)      也就是const int 只能用const int來接收 (11)new和malloc的區別      {       1.new是c++里出現的,malloc是c庫的       2.new屬于運算符,malloc屬于函數       3.new一具體類型為單位,malloc以字節為單位 char *ptr = new char[2];        int (*p)[2] = new int[2][2]        char *p = (char *) malloc(100 * sizoef(char))      4.new在單個類型變量可進行初始化,malloc不可以      } (12)引用vs指針   引用是給一個變量起別名   類型 &引用名 = 變量名   int a = 1;   int &b = a;    注意:引用一定要初始化,指明引用變量是誰的別名         在c++中,如果傳num的值,用int &num來接,即對num的內存空間進行修改,num本來的之也會改變   區別:引用訪問一個變量是直接訪問,而指針是間接訪問         引用是一個變量的別名,本身不單獨分配自己的內存空間,而指針有內存空間         引用一經初始化不能再引用其它的變量,而指針可以         盡可能使用引用,不得已使用指針  (13)內聯函數(以空間換時間) inline void add()        將子函數直接嵌進去(以內存空間換運行時間)        宏函數(以編譯時間換運行空間)    內聯函數與帶參數宏區別    1.內聯函數調用時,要求實參與形參類型一致,內聯函數會先對實參表達式求值,然后傳遞給形參,而宏調用時只用實參簡單代替形參    2.內聯函數是在編譯時在調用的地方將代碼展開,而宏在預處理進行替換    3.在c++建議采用inline函數代替帶參數宏   (14)函數重載     可以采用相同的函數名,但形參類型,個數,順序不能都一樣     例子:int add(int a);           int add(int a,int b);           int add(char a,int b);         這三個子函數可以同時存在,因為c++中,相同函數名諱自動根據形參區別,返回值不同不能作為重載條件    (15)在c++中調用c編譯的函數,必須用extern "C"混合編譯     #ifdef __cpluscplus     extern "C"     {     #endif         int add(int a, int b)     #ifdef __cpluscplus     }     #endif    (16)默認參數     int add(int a, int b = 1, int c = 2)     {         return a + b + c;     }      add(1)的值就是1+1+2 = 4     默認參數必須從右到左連續,即不能int add(int a = 1, int b, int c = 2)     函數重載與默認參數有可能沖突    
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 昔阳县| 遵义市| 乌审旗| 漠河县| 喀喇沁旗| 全椒县| 荣成市| 巴林左旗| 龙海市| 灌南县| 淳化县| 收藏| 依兰县| 临泉县| 林甸县| 安西县| 盈江县| 合川市| 潮州市| 海南省| 原阳县| 军事| 改则县| 青阳县| 玛纳斯县| 镇原县| 浪卡子县| 牙克石市| 金山区| 区。| 扎鲁特旗| 临安市| 鄂伦春自治旗| 三都| 大荔县| 巴林左旗| 阳信县| 霍林郭勒市| 雷州市| 凌云县| 开江县|