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

ivy-jie

progress ...

C++博客 首頁 新隨筆 聯系 聚合 管理
  9 Posts :: 41 Stories :: 6 Comments :: 0 Trackbacks
 靜態類成員包括靜態數據成員靜態函數成員兩部分。   
    
1 靜態數據成員:   
   
   
      類體中的數據成員的聲明前加上static關鍵字,該數據成員就成為了該類的靜態數據成員。和其他數據成員一樣,靜態數據成員也遵守public/protected/private訪問規則。同時,靜態數據成員還具有以下特點:  
   
        1.靜態數據成員的定義。  
            靜態數據成員實際上是類域中的全局變量。所以,靜態成員不能在類定義里邊初始化,只能在class body外初始化。    舉例如下:  
   
        xxx.h文件  
        class   base{  
            private:  
            static   const   int   _i;//聲明,標準c++支持有序類型在類體中初始化,但vc6不支持。  
        };    
   
        xxx.cpp文件  
        const   int   base::_i=10;//定義(初始化)時不受private和protected訪問限制.   
       
    
        2.靜態數據成員的所有對象所共享,包括該類派生類的對象。即派生類對象與基類對象共享基類的靜態數據成員。 
  
        3 初始化(或定義),訪問方式

         靜態數據成員初始化的格式為:
        <數據類型><類名>::<靜態數據成員名>=<值>
       類的靜態數據成員有兩種訪問形式:
        <類對象名>.<靜態數據成員名> 或 <類類型名>::<靜態數據成員名>
       如果靜態數據成員的訪問權限允許的話(即public的成員),可在程序中,按上述格式來引用靜態數據成員 ;

  
       3.靜態數據成員可以成為成員函數的可選參數,而普通數據成員則不可以。舉例如下:  
      class   base{  
          public   :  
          static   int   _staticVar;  
          int   _var;  
          void   foo1(int   i=_staticVar);//正確,_staticVar為靜態數據成員  
          void   foo2(int   i=_var);//錯誤,_var為普通數據成員  
      };          
       
      4.★靜態數據成員的類型可以是所屬類的類型,而普通數據成員則不可以。普通數據成員的只能聲明為 所屬類類型的指針或引用。舉例如下:  
       
      class   base{  
          public   :  
          static   base   _object1;//正確,靜態數據成員  
          base   _object2;//錯誤  
          base   *pObject;//正確,指針  
          base   &mObject;//正確,引用  
      };  
   
    5.★這個特性,我不知道是屬于標準c++中的特性,還是vc6自己的特性。  
        靜態數據成員的值在const成員函數中可以被合法的改變。舉例如下:  
   
      class   base{  
          public:  
          base(){_i=0;_val=0;}  
   
          mutable   int   _i;  
          static   int   _staticVal;    
          int   _val;  
          void   test()   const{//const   成員函數  
   
                _i++;//正確,mutable數據成員  
                _staticVal++;//正確,static數據成員  
                _val++;//錯誤  
   
          }  
      };  
      int   base::_staticVal=0;   
    
2  靜態成員函數   
     
      1.靜態成員函數的地址可用普通函數指針儲存,而普通成員函數地址需要用   類成員函數指針來儲存。舉例如下:  
          class   base{  
              static   int   func1();  
              int   func2();  
          };  
   
          int   (*pf1)()=&base::func1;//普通的函數指針  
          int   (base::*pf2)()=&base::func2;//成員函數指針   
    
    2.靜態成員函數不可以調用類的非靜態成員。因為靜態成員函數不含this指針   
     通常情況下,this 是缺省的。如函數fn()實際上是this->fn()。但是與普通函數相比,靜態成員函數由于不是與任何的對象相聯系,因此它不具有this指 針。從這個意義上講,它無法訪問屬于類對象的非靜態數據成員也無法訪問非靜態成員函數,它只能調用其余的靜態成員函數。 
    
      3.靜態成員函數不可以同時聲明為   virtual、const、volatile函數。舉例如下:  
        class   base{  
              virtual   static   void   func1();//錯誤  
              static   void   func2()   const;//錯誤  
              static   void   func3()   volatile;//錯誤  
                     };   

3   靜態構造函數
     靜態構造函數自動被調用,不能被顯式調用。雖然提供了許多約束條件,但是靜態構造函數執行的確切時間和順序是不確定的:
一個類的靜態構造函數在這個類的任何實例被創建前執行。
一個類的靜態構造函數在類的任何靜態成員被引用前執行。
一個類的靜態構造函數在它的所有派生類的靜態構造函數執行之后執行。
一個類的靜態構造函數從不會被執行一次以上。
posted on 2009-05-24 10:42 ivy-jie 閱讀(461) 評論(0)  編輯 收藏 引用 所屬分類: c++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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一区二区| 亚洲高清一区二区三区| 亚洲精品女人| 亚洲一区二区三区四区五区午夜| 午夜精品影院在线观看| 久久视频在线看| 亚洲国产乱码最新视频| 亚洲精品久久久久久下一站| 一区二区精品在线观看| 欧美专区中文字幕| 欧美黄色一区| 国产视频久久久久| 亚洲美女在线看| 久久精品在线视频| 亚洲精品日韩综合观看成人91| 亚洲欧美日韩国产一区二区三区 | 国产日韩亚洲欧美综合| 韩日欧美一区二区三区| 亚洲毛片在线| 久久精品国产99国产精品澳门| 欧美大片一区二区三区| 日韩小视频在线观看专区| 香蕉久久久久久久av网站| 你懂的一区二区| 国产精品视频网站| 亚洲第一色中文字幕| 亚洲欧美另类国产| 欧美激情中文不卡| 久热精品在线视频| 在线中文字幕日韩| 免费日韩精品中文字幕视频在线| 亚洲激情自拍| 久久大综合网| 国产精品嫩草99av在线| 日韩视频免费观看| 美国成人直播| 亚洲欧美日韩爽爽影院| 欧美日韩中文在线观看| 亚洲黄色成人网| 久久亚洲春色中文字幕久久久| 一区二区电影免费在线观看| 欧美黑人在线播放| 亚洲人成在线观看一区二区| 另类专区欧美制服同性| 久久av一区二区三区漫画| 国产精品普通话对白| 亚洲午夜一区二区三区| 亚洲黄色一区二区三区| 嫩草成人www欧美| 亚洲国产你懂的| 欧美成人精品h版在线观看| 久久久久国产精品厨房| 黄色成人片子| 久久综合九色综合欧美狠狠| 欧美中文字幕视频| 国产亚洲激情在线| 久久精品人人做人人综合| 亚洲欧美日韩在线一区| 国产精品影音先锋| 久久xxxx精品视频| 欧美一区二区精品久久911| 国产精品一区二区a| 欧美在线视频a| 欧美一级免费视频| 国内偷自视频区视频综合| 久久免费的精品国产v∧| 久久久99免费视频| 亚洲激情国产精品| 日韩视频一区二区三区| 国产精品乱码妇女bbbb| 久久精品动漫| 免费亚洲一区| 亚洲香蕉网站| 欧美在线观看www| 亚洲国内高清视频| 日韩网站在线看片你懂的| 欧美日韩免费| 亚洲免费婷婷| 亚洲男同1069视频| 韩国成人福利片在线播放| 蜜月aⅴ免费一区二区三区| 久热这里只精品99re8久| 亚洲乱码一区二区| 一本色道久久99精品综合| 国产精品一香蕉国产线看观看| 久久手机精品视频| 欧美国产精品va在线观看| 亚洲欧美日韩一区二区三区在线 | 欧美一区二区在线看| 亚洲欧美影院| 嫩草影视亚洲| 欧美日韩综合视频| 久久久另类综合| 欧美激情中文不卡| 午夜视频在线观看一区| 老司机一区二区| 中文国产亚洲喷潮| 久久激情一区| 一区二区三区久久精品| 久久av一区二区三区漫画| av成人免费在线| 久久久久久69| 亚洲欧美亚洲| 欧美人妖在线观看| 久久综合九色综合网站| 国产精品久久福利| 欧美大片专区| 国产欧美日本一区二区三区| 欧美激情五月| 国内偷自视频区视频综合| 亚洲作爱视频| 亚洲国产精品第一区二区| 亚洲图片欧美午夜| 亚洲激情一区| 久久久欧美精品| 久久国产精彩视频| 国产精品久久久久婷婷| 亚洲国产毛片完整版| 国产一区二区三区视频在线观看| 亚洲美女啪啪| 亚洲精品一区在线| 久久噜噜噜精品国产亚洲综合| 亚洲欧美欧美一区二区三区| 免费高清在线视频一区·| 久久青草久久| 国产深夜精品| 亚洲香蕉视频| 亚洲免费小视频| 欧美日韩在线播放三区四区| 亚洲国产高清自拍| 亚洲第一视频网站| 免费一级欧美片在线观看| 久久青青草综合| 国产人妖伪娘一区91| 亚洲午夜一区二区三区| 亚洲午夜久久久久久尤物 | 美女网站久久| 久久一区国产| 国内精品视频一区| 久久精品国产96久久久香蕉| 久久国产精品久久久久久电车| 国产精品视频一| 欧美一区二区三区电影在线观看| 久久精品免费播放| 黄色成人免费网站| 浪潮色综合久久天堂| 亚洲成色777777女色窝| 亚洲精品日本| 欧美日韩一区二区三区| 亚洲美女在线一区| 影音先锋另类| 欧美电影打屁股sp| 亚洲精品精选| 午夜一级久久| 国产综合在线看| 亚洲一区二区三区精品在线| 久久xxxx| 亚洲福利精品| 中文一区在线| 国产精品自拍一区| 久久九九国产精品| 欧美激情四色| 亚洲综合不卡| 一区二区在线观看视频在线观看| 麻豆免费精品视频| 日韩午夜av在线| 久久精品一二三| 亚洲三级色网| 国产精品亚洲欧美| 可以看av的网站久久看| 夜夜爽夜夜爽精品视频| 久久精品论坛| aⅴ色国产欧美| 国产亚洲精品久久久久婷婷瑜伽| 久久久久免费观看| 一本不卡影院| 免费观看亚洲视频大全| 亚洲曰本av电影| 亚洲国产精品电影| 国产日韩欧美精品| 欧美激情小视频| 欧美一级视频免费在线观看| 亚洲福利视频二区| 久久美女性网| 亚洲一区久久久| 亚洲黄色高清| 韩国女主播一区二区三区| 欧美日韩精品一区视频| 久久久天天操| 亚洲免费伊人电影在线观看av| 1024亚洲| 99热免费精品在线观看| 欧美午夜视频一区二区| 亚洲日本成人女熟在线观看| 欧美成人精品|