成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C++學(xué)習(xí)要點(diǎn)總結(jié)(下)

開發(fā) 后端
本文是作者對于C++學(xué)習(xí)的要點(diǎn)總結(jié),筆者轉(zhuǎn)載過來與大家分享一下,希望對各位能有所幫助。本文是C++學(xué)習(xí)要點(diǎn)總結(jié)的后半部分。

  上一篇文章我們已經(jīng)介紹了C++學(xué)習(xí)要點(diǎn)總結(jié)的前半部分C++學(xué)習(xí)要點(diǎn)總結(jié)(上),這篇我們繼續(xù)介紹下半部分:

  16. 內(nèi)聯(lián)函數(shù)(inline)在實(shí)現(xiàn)上實(shí)際和宏類似,在內(nèi)聯(lián)函數(shù)出現(xiàn)的地方將函數(shù)展開來避免函數(shù)調(diào)用時(shí)的出棧、如棧,提高效率。但內(nèi)聯(lián)函數(shù)的代價(jià)是:代碼增大。inline函數(shù)適合成員函數(shù)和自由函數(shù)。在類中實(shí)現(xiàn)的函數(shù)自動為內(nèi)聯(lián)函數(shù)。inline必須定義到函數(shù)的實(shí)現(xiàn)上,例如:inline int PlusOne(int) 是無效的。友元函數(shù)在類的體內(nèi)被實(shí)現(xiàn)自動變?yōu)閮?nèi)聯(lián)函數(shù)。

  17. #include

  1. #define DEBUG(X) cout<<#X"="<  

  其中的#X表示X被當(dāng)作字符串輸出。

  18. assert(0 != 0); 如果assert中的條件為假,則運(yùn)行期間回退出程序,且報(bào)告出錯(cuò)代碼的行號。(#include )

  19. 靜態(tài)對象在main結(jié)束或exit()被調(diào)用時(shí)才調(diào)用自身的析構(gòu)函數(shù)。這意味著,在對象的析構(gòu)函數(shù)中調(diào)用exit()是很危險(xiǎn)的,有可能進(jìn)入一個(gè)死循環(huán)中。調(diào)用abort()來退出函數(shù),靜態(tài)對象的析構(gòu)函數(shù)并不會被調(diào)用。我們可以用atexit()來指定跳出main或調(diào)用exit時(shí)要執(zhí)行的操作,用atexit注冊的函數(shù),可以在所有對象的析構(gòu)函數(shù)之前調(diào)用。

  1. void exit_fn2(void)  
  2. {  
  3. printf("Exit function #2 called\n");  
  4. //處理函數(shù)  
  5. atexit(exit_fn2);  

  20. 全局變量實(shí)際上用的是靜態(tài)存儲。靜態(tài)變量的構(gòu)造是在進(jìn)入main之前調(diào)用的,在main結(jié)束時(shí)調(diào)用它的析構(gòu)函數(shù)。變量的名字由小范圍(c++而言):

  1. //*.cpp  
  2. int a; //靜態(tài)變量,但為 extern int a; 即它是全局的,外部可見的  
  3. static int b; //靜態(tài)變量,static 和extern相反,只在*.cpp中有效,對其他單元(文件)是不可見的。函數(shù)的定義和上面相同。  
  4. main()  
  5. { }   

  類的靜態(tài)成員變量可以如下賦值:int X::s=23;(在*.cpp中,無論公私都可以)

  21. 名字空間(namespace): 定義一個(gè)名字空間,然后使用unsing就可以將當(dāng)前的類型上下文轉(zhuǎn)換名字空間所定地的.

  1. namespace math  
  2. {  
  3. enum sign{positive, negative};  
  4. class integer{  
  5. int i;  
  6. sign s;  
  7. public:  
  8. interger(int I=0): i(i) {………}  
  9. sign Sign() {………}  
  10. …………………..  
  11. };//end class  
  12. interger A, B, C;  
  13. interger divide(interger, interger);  
  14. }//no ;  
  15. void q()  
  16. {  
  17. using namespace math;  
  18. interger A; //hides math::A  
  19. A.Sign(negative);  
  20. Math::A.Sign(positive);  

  22. 一般對于函數(shù)flaot f(int a, int b); 某些c++編譯器編譯后生成_f_int_int的名字,有些c編譯器則生成_f的名字。故在c++中鏈接c的庫函數(shù)時(shí)要用extern “C”告訴編譯器,按c的規(guī)則來編譯函數(shù)。類似的還有extern “C”{#include “myhead.h”},c++還支持extern “C++”{}.

  23. 在函數(shù)調(diào)用時(shí),傳引用也是將指針壓棧。

  24. 構(gòu)造函數(shù)、析構(gòu)函數(shù)、賦值構(gòu)造函數(shù)、重載的=,四者的調(diào)用順序:(三種函數(shù)都已實(shí)現(xiàn))

  a) X x; X a=x;

  1. result:  
  2. X:construct  
  3. X:copy_struct   

  b) X x; X a; a=x;

  1. Result:  
  2. X:construct  
  3. X:construct  
  4. X:copy_stru  
  5. operator =  
  6. X:destruct 

  如果沒有賦值構(gòu)造函數(shù)則結(jié)果:

  1. X:construct  
  2. X:construct  
  3. operator =  
  4. X:destruct   

  (如果直接X a=x;這不掉用一般的構(gòu)造函數(shù),調(diào)用復(fù)制構(gòu)造函數(shù))

  指向類的成員函數(shù)的指針:設(shè) int X:: a(void){}

  1. X x;  
  2. int (X:: *pf)(void)= &X::a;  
  3. (x.*pf)();  

  指向成員變量的指針: 設(shè)int i; 是X的成員變量

  1. int X::*pm = &X::i;  
  2. X x; 

【編輯推薦】

  1. C++中的指針用法總結(jié)
  2. 如何成為一名C++程序員
  3. c++編程常用工具
  4. 給C++初學(xué)者的50個(gè)忠告
  5. c++最基礎(chǔ)的20條規(guī)則
責(zé)任編輯:韓亞珊 來源: itlab博客
相關(guān)推薦

2011-04-19 17:36:12

C++

2010-02-05 15:30:54

C++多線程測試

2011-07-13 16:49:59

C++

2010-01-18 10:53:26

2010-01-21 18:00:59

C++語言

2010-01-25 14:31:07

C++類

2010-01-14 17:02:10

學(xué)習(xí)C++

2010-01-11 14:05:01

C++學(xué)習(xí)方法

2010-01-27 16:52:31

C++語言學(xué)習(xí)

2010-01-26 17:53:05

C++入門學(xué)習(xí)

2010-06-30 18:09:22

UML建模

2010-01-14 09:43:26

C++標(biāo)準(zhǔn)程序庫

2010-07-09 14:05:56

UML建模

2010-01-11 09:28:34

C++編程

2010-01-15 14:59:54

C++標(biāo)準(zhǔn)程序庫

2010-01-25 11:21:01

C++語法

2010-01-26 17:11:13

C++編程

2010-01-22 16:35:41

C++開發(fā)

2010-01-13 11:10:17

C++庫函數(shù)

2010-01-22 15:53:55

C++轉(zhuǎn)換
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 2018国产大陆天天弄 | 久久精品亚洲精品国产欧美 | 欧美激情久久久 | 在线一区二区三区 | 日韩三级| 韩日一区二区三区 | 国产美女久久久 | h网站在线观看 | 久久精品手机视频 | 欧美日韩精品综合 | 欧美一级久久 | 精品欧美激情在线观看 | 日韩在线国产精品 | 欧美伊人 | 国产成人精品一区二区三区在线 | 亚洲一区二区久久久 | 日韩欧美精品在线 | 亚洲欧洲视频 | 国产在线视频三区 | 一区二区中文字幕 | 可以在线看的黄色网址 | 一级黄色夫妻生活 | 青青草精品 | 日韩精品视频中文字幕 | 99爱国产| 国产精久久久久久久妇剪断 | 成人精品一区二区 | 日本在线综合 | 久久精彩 | 91网在线观看 | www.一区二区三区 | 国产精品免费看 | 成人深夜福利 | 色综合久久久久 | 国产精品久久久久9999鸭 | 国产日韩视频 | 欧美一区免费 | 日本在线免费观看 | 天天操精品视频 | 久久高清免费视频 | 久久综合九色综合欧美狠狠 |