青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++基礎:常量成員函數特殊說明

1. 傳指針時,我們可以通過指針來修改它在外部所指向的內容。但如果要修改外部指針所指向的對象是不可能的。例如傳遞外部指針到函數內來分配空間,必須傳遞指針的指針或指針的引用。

  2. char carry[10] = {0}; 編譯器會將其后所有的東西都置0;

  3. 函數返回值為const時,返回的東西付給一個類型相同的標示后其不能為左值;

  4. const int *i; int const *i; int * const i; 前兩個功能相同,說明I所指向的內容不變;最后一個說明指針指向的地址不變,但內容可變。

  5. 類中的const成員函數。定義為在原型后加const。常量函數不能修改類中的任何屬性。但有兩種方法可以修改。

  a) {(myclass *)this->member1 = values;}

  b) 將一個成員定義成mutable即可被常量函數修改。

  6. 類中的常量const 類型的,不能在類中被用來定義數組。而enum {ONE=100; TWO=2};定義的ONE、TWO卻可以。通常的enum定義的置分配問題:enum A{ L=9, Z};此時Z的值為10。

  7. 用const定義的int可用來開辟數組,但const定義的常量數組中的元素,不能用來定義數組。

  8. 用sizeof計算變量的空間,如果是數組,按實際空間返回;常量字符串(實際上是在靜態內存區開辟的變量)sizeof返回比實際長度加一。如果是指針則不考慮它指向的空間大小,僅僅返回指針類型的大小。如果用sizeof計算函數的行參,即使是屬組也僅僅返回一個相關類型指針的大小。

  9. 形如int iarray[] = {12, 124, 433};編譯器會自動給iarray分配3個元素的長度。元素長度的個數計算公式為sizeof(iarray) / sizeof(*iarray)。

  10. 拷貝構造函數:當行參和實參結合時,如果是復雜對象的傳值類型,則調用拷貝構造函數生成一個臨時對象作為實參,退出函數時,臨時對象被調用析構函數釋放。當返回值是復雜對象是,也是調用拷貝構造函數來賦值。這就出現構造函數和析構函數被調用次數不相等的情況。拷貝構造函數的原型為A(A&),我們可在類中重載。(缺省的拷貝構造函數是使用位(bit)拷貝方法:淺層拷貝,不拷貝指針指向的內容)。

  11. volatile類型的變量告訴編譯器,本變量不需要進行代碼優化。在多線程的應用中,我們如果讀入一個變量到寄存器,此時時間片到期,去處理其他線程了,在重新獲得處理機時,volatile類型告訴處理機,重新從變量讀取數據到寄存器,而不是用寄存器數據直接處理,這樣可以防止臟數據。

  12. class 和struct在一定程度上有相同的功能,只不過前者缺省的成員是私有的,后者在缺省時成員為共有的。故而class不是c++必需的保留字

  13. c和c++編譯器,對相同的函數名編譯后生成的相同的標示不同,故而在引用c的庫文件時必須使用extern “C”告訴編譯器,它是c的函數,按c的規則編譯。通常我們使用的標準頭文件已被處理過。

  14. #include “filename”; #include ,前者先在當前目錄下尋找文件,如果找不到再到系統規定的路徑下找,后者直接到系統規定的路徑下找。

  15. 任何地方分配的靜態變量(static),其生命周期和主進程相同。第二次定義一個已存在的static變量,對變量的內用無影響,但它的可見范圍只在定義的范圍內。(考研曾作錯!)(從靜態變量的特性不難理解,類中的static類型是所有對象共享的)

  16. 內聯函數(inline)在實現上實際和宏類似,在內聯函數出現的地方將函數展開來避免函數調用時的出棧、如棧,提高效率。但內聯函數的代價是:代碼增大。inline函數適合成員函數和自由函數。在類中實現的函數自動為內聯函數。inline必須定義到函數的實現上,例如:inline int PlusOne(int) 是無效的。友元函數在類的體內被實現自動變為內聯函數。
 17. #include

  #define DEBUG(X) cout<<#X"="<
  其中的#X表示X被當作字符串輸出。

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

  19. 靜態對象在main結束或exit()被調用時才調用自身的析構函數。這意味著,在對象的析構函數中調用exit()是很危險的,有可能進入一個死循環中。調用abort()來退出函數,靜態對象的析構函數并不會被調用。我們可以用atexit()來指定跳出main或調用exit時要執行的操作,用atexit注冊的函數,可以在所有對象的析構函數之前調用。

  void exit_fn2(void)
  {
  printf("Exit function #2 called\n");
  } //處理函數
  atexit(exit_fn2);

  20. 全局變量實際上用的是靜態存儲。靜態變量的構造是在進入main之前調用的,在main結束時調用它的析構函數。變量的名字由小范圍(c++而言):

  //*.cpp

  int a; //靜態變量,但為 extern int a; 即它是全局的,外部可見的

  static int b; //靜態變量,static 和extern相反,只在*.cpp中有效,對其他單元(文件)是不可見的。函數的定義和上面相同。

  main()

  { }

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

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

  namespace math
  {
  enum sign{positive, negative};
  class integer{
  int i;
  sign s;
  public:
  interger(int I=0): i(i) {………}
  sign Sign() {………}
  …………………..
  };//end class
  interger A, B, C;
  interger divide(interger, interger);
  }//no ;
  void q()
  {
  using namespace math;
  interger A; //hides math::A
  A.Sign(negative);
  Math::A.Sign(positive);
  }

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

  24. 構造函數、析構函數、賦值構造函數、重載的=,四者的調用順序:(三種函數都已實現)

  a) X x; X a=x;
  result:
  X:construct
  X:copy_struct
  b) X x; X a; a=x;
  Result:
  X:construct
  X:construct
  X:copy_stru
  operator =
  X:destruct

  如果沒有賦值構造函數則結果:

  X:construct
  X:construct
  operator =
  X:destruct

  (如果直接X a=x;這不掉用一般的構造函數,調用復制構造函數)

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

  X x;
  int (X:: *pf)(void)= &X::a;

  (x.*pf)();

  指向成員變量的指針: 設int i; 是X的成員變量

  int X::*pm = &X::i;

  X x;

posted on 2007-11-21 11:04 lovetiffany 閱讀(1021) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

導航

統計

常用鏈接

留言簿(4)

隨筆檔案

網站收藏

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            麻豆免费精品视频| 亚洲一区二区三区免费视频| 久久一区二区三区av| 欧美一区二区播放| 中文一区字幕| 国产一区二区0| 欧美日韩免费观看一区| 一区二区三区久久网| 久久精品av麻豆的观看方式| 亚洲日本中文字幕免费在线不卡| 国产伦精品一区二区三区| 久久亚洲私人国产精品va| 日韩午夜电影av| 久久一区二区三区av| 99在线精品视频| 日韩视频在线你懂得| 久久精品日产第一区二区三区| 欧美国产日韩一区二区三区| 欧美成人精品高清在线播放| 亚洲欧美在线高清| 久久综合影音| 久久久亚洲人| 亚洲国产精品久久| 免费成人黄色| 午夜国产不卡在线观看视频| 欧美成人激情视频| 欧美sm极限捆绑bd| 亚洲欧洲偷拍精品| 夜夜嗨av一区二区三区四季av| 久久国产精品久久久久久电车 | 中日韩午夜理伦电影免费| 亚洲人妖在线| 久久综合99re88久久爱| 欧美国产一区在线| 亚洲午夜电影在线观看| 欧美性猛交一区二区三区精品| 黄色国产精品| 午夜一区二区三区在线观看| 亚洲狼人综合| 欧美丰满少妇xxxbbb| 激情久久久久久久久久久久久久久久| 91久久综合| 美女主播精品视频一二三四| 亚洲男女自偷自拍| 免费91麻豆精品国产自产在线观看| 欧美日韩调教| 亚洲国产成人午夜在线一区| 亚洲午夜视频| 亚洲欧洲另类国产综合| 国产精品国产三级国产普通话蜜臀 | 欧美jizzhd精品欧美巨大免费| 久久国产精品亚洲77777| 欧美国产在线电影| 亚洲精品欧美| 亚洲天堂黄色| 久久伊人精品天天| 亚洲一级黄色av| 欧美中文字幕| 夜夜嗨av一区二区三区免费区| 亚洲精品国产系列| 国产三区精品| 欧美一级午夜免费电影| 午夜免费日韩视频| 在线成人激情黄色| 亚洲日本va午夜在线影院| 男女激情视频一区| 亚洲国产一二三| 日韩一级精品视频在线观看| 亚洲片在线观看| 久久久久综合一区二区三区| 99国内精品久久| 亚洲欧美www| 一区二区三区免费看| 欧美在线一二三四区| 亚洲高清一区二| 亚洲精品视频在线播放| 欧美成ee人免费视频| 欧美在线播放一区| 美女免费视频一区| 亚洲最新中文字幕| 亚洲第一在线综合在线| 国内精品模特av私拍在线观看 | 久久婷婷av| 久久久久久九九九九| 欧美亚洲第一区| 欧美国产日韩一区二区在线观看| 国产视频久久久久久久| 亚洲精品一区二区三区99| 国产精品一区在线播放| 国产亚洲精品资源在线26u| 亚洲视频你懂的| 久久久久久久久久久成人| 亚洲国产高清aⅴ视频| 免费观看一区| 亚洲视频电影图片偷拍一区| 亚洲天堂av在线免费观看| 欧美日韩精品免费在线观看视频| 91久久线看在观草草青青| 亚洲精品美女在线| 欧美护士18xxxxhd| 亚洲二区在线视频| 狠狠久久五月精品中文字幕| 麻豆精品视频在线| 亚洲国产精品视频| 免费不卡欧美自拍视频| 国产综合色在线| 欧美在线亚洲| 久久久久久久综合狠狠综合| 亚洲一区日本| 一区二区三区免费观看| 亚洲精品久久久久久久久久久| 久久综合狠狠综合久久激情| 亚洲精品中文字幕在线观看| 国产精品成人午夜| 免费成人高清在线视频| 一区二区三区视频在线看| 国内视频精品| 韩国视频理论视频久久| 美女视频黄a大片欧美| 欧美一级在线播放| 亚洲精品欧美日韩专区| 欧美在线视频免费| 欧美在线短视频| 久热精品视频| 一区二区三区导航| 亚洲免费成人av电影| 欧美国产视频在线| 欧美一区二区三区在线播放| 欧美一区二区高清| 久久久久国产精品厨房| 亚洲视频视频在线| 99精品99| 亚洲乱亚洲高清| 一区二区三区回区在观看免费视频| 国产麻豆日韩| 欧美色欧美亚洲另类七区| 99在线精品视频在线观看| 免费不卡亚洲欧美| 国产美女诱惑一区二区| 亚洲午夜精品| 亚洲人成在线观看| 欧美ed2k| 亚洲日韩欧美视频一区| 欧美在线视频一区二区三区| 亚洲高清视频一区二区| 亚洲狼人精品一区二区三区| 一本色道久久88精品综合| 午夜精品视频在线观看一区二区| 日韩网站在线| 久久噜噜亚洲综合| 欧美大片在线观看一区二区| 久久在线免费观看视频| 欧美影院精品一区| 亚洲精品美女91| 亚洲一区二区在线播放| 国语自产精品视频在线看一大j8 | 99re热精品| 欧美大片一区二区| 亚洲福利在线观看| 欧美一进一出视频| 欧美午夜剧场| 亚洲一区二区三区四区视频| 欧美激情国产日韩精品一区18| 欧美一区在线视频| 雨宫琴音一区二区在线| 久久精品女人的天堂av| 一区二区三区欧美在线观看| 欧美日韩在线一区二区三区| 欧美在线视屏| 在线观看久久av| 欧美激情视频一区二区三区不卡| 久久综合给合久久狠狠狠97色69| 狠狠综合久久av一区二区小说| 久久久久久九九九九| 久久影音先锋| 亚洲一区二区在线播放| 香蕉视频成人在线观看| 亚洲国产另类 国产精品国产免费| 蜜臀av在线播放一区二区三区| 久久人体大胆视频| 亚洲视频在线观看免费| 久久成人免费日本黄色| 99re热这里只有精品视频 | 国产伦精品一区二区三区照片91 | 亚洲女性喷水在线观看一区| 激情综合网激情| 亚洲性图久久| 99re热这里只有精品视频| 久久国产一区二区三区| 亚洲综合精品四区| 女女同性女同一区二区三区91| 欧美在线视频播放| 久久久久久亚洲精品杨幂换脸| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久 | 国产精品欧美在线| 欧美一区成人| 日韩午夜激情av| 久久免费高清| 香蕉成人啪国产精品视频综合网| 一区在线电影|