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

HyJune的專欄

Linux From Scratch

  C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  10 隨筆 :: 11 文章 :: 6 評(píng)論 :: 0 Trackbacks
from:http://ww2w.blog.sohu.com/69144612.html

1. 在全局域中聲明的變量會(huì)自動(dòng)初始化為0,如:

   double  salary;
   int   day;

2. 如果變量是在局部域中定義的,或是通過(guò)new表達(dá)式動(dòng)態(tài)分配的,
則系統(tǒng)不會(huì)向它提供初始值0,這些對(duì)象被認(rèn)為是未初始化,其值隨機(jī)。
而類對(duì)象會(huì)通過(guò)缺省構(gòu)造函數(shù)自動(dòng)初始化

3. C++支持兩種形式的初始化:
1:使用賦值操作符的顯示語(yǔ)法形式。如:int ival=1024;
2: 隱式形式,初始值被放在括號(hào)中。如:int ival (1024);

4. 數(shù)組可以顯示地用一組數(shù)初始化,如:
const int aray_size=3;
int ia[aray_size]={0,1,2};

int a[5] ={0};  則a的各各元素都初始化為0

如果指定的維數(shù)大于給定的元素的個(gè)數(shù),沒(méi)有被顯示初始化的元素將置為0。也可以不指定維數(shù)值,如: int ia[]={0,1,2};

5. 全局變量的初始化
對(duì)于不同編譯單位的全局變量,其初始化的順序沒(méi)有任何的保證,因此對(duì)不同編譯單位里的全局變量,在它們的初始化順序之間建立依賴性都是不明智的。
    此外也沒(méi)辦法捕捉到全局變量初始化拋出的異常,一般來(lái)說(shuō)要減少全局變量的使用,特別是限制那些要求復(fù)雜初始化的全局變量。so:
    1,盡量不用全局變量 
    2,用靜態(tài)變量,通過(guò)訪問(wèn)器進(jìn)行訪問(wèn) 
例如:全局變量  
    int   a   =   5;  
    int   b   =   a;  
    如果a,和b定義在同一個(gè)文件里,那沒(méi)什么問(wèn)題,結(jié)果b等于5.  
    如果a和b定義在不同文件里,就不能保證b也等于5,也就是說(shuō)不能保證a先初始化.
事實(shí)上,除了在同一個(gè)文件定義的全局對(duì)象的初始化是按照定義次序來(lái)進(jìn)行的之外,其他全局或靜態(tài)變量之間的初始化次序沒(méi)有任何保障。解決這種問(wèn)題的方法是不直接使用全局變量,而改用一個(gè)包裝函數(shù)來(lái)訪問(wèn),例如  
  int   get_a()  
  {  
          static   int   a   =   5;  
          return   a;  
  }  
  int   get_b()  
  {  
          static   int   b   =   get_a();  
          return   b;  
  }   
    
    這樣的話,無(wú)論get_a和get_b是否定義在同一個(gè)文件中,get_b總是能夠返回正確的結(jié)果,原因在于,函數(shù)內(nèi)部的靜態(tài)變量是在第一次訪問(wèn)的時(shí)候來(lái)初始化。 
    任何時(shí)候,如果在不同的被編譯單元中定義了"非局部靜態(tài)對(duì)象",并且這些對(duì)象的正確行為依賴于它們被初始化的某一特定順序,就會(huì)產(chǎn)生問(wèn)題.你絕對(duì)無(wú)法控制 不同被編譯單元中非局部靜態(tài)對(duì)象的初始化順序.對(duì)于函數(shù)中的靜態(tài)對(duì)象(即"局部"靜態(tài)對(duì)象)它們?cè)诤瘮?shù)調(diào)用過(guò)程中初次碰到對(duì)象的定義時(shí)被初始化..  
    PS:千萬(wàn)不要寫出和編譯順序相關(guān)的程序來(lái)。 
 
關(guān)于全局變量的初始化,C語(yǔ)言和C++是有區(qū)別的。      
   在C語(yǔ)言中,只能用常數(shù)對(duì)全局變量進(jìn)行初始化,否則編譯器會(huì)報(bào)錯(cuò)。       
   在C++中,如果在一個(gè)文件中定義了int a = 5;要在另一個(gè)文件中定義int b = a;的話,前面必須對(duì)a進(jìn)行聲明:extern   int   a;否則編譯不通過(guò).、即使是這樣,int b = a;這句話也是分兩步進(jìn)行的:在編譯階段,編譯器把b當(dāng)作是未初始化數(shù)據(jù)而將它初始化為0;在執(zhí)行階段,在main被執(zhí)行前有一個(gè)全局對(duì)象的構(gòu)造過(guò)程, int b = a;被當(dāng)作是int型對(duì)象b的拷貝初始化構(gòu)造來(lái)執(zhí)行。    
   其實(shí),準(zhǔn)確地說(shuō),在C++中全局對(duì)象、變量的初始化是獨(dú)立的,如果不是象int a   =   5;這樣的已初始化數(shù)據(jù),那么就是象b這樣的未初始化數(shù)據(jù)。    
   而C++中全局對(duì)象、變量的構(gòu)造函數(shù)調(diào)用順序是跟聲明有一定關(guān)系的,即在同一個(gè)文件中先聲明的先調(diào)用。對(duì)于不同文件中的全局對(duì)象、變量,它們的構(gòu)造函數(shù)調(diào)用順序是未定義的,取決于具體的編譯器。

posted on 2008-06-17 17:00 martin0501 閱讀(480) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 1. C/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>
            欧美成人综合| 久久久久久久性| 欧美一区亚洲一区| 99成人免费视频| 在线看片成人| 一本色道久久综合一区| 好吊色欧美一区二区三区四区| 欧美精品aa| 欧美精品1区| 欧美午夜片在线免费观看| 欧美—级在线免费片| 欧美极品aⅴ影院| 欧美吻胸吃奶大尺度电影| 国产精品视频网| 精品51国产黑色丝袜高跟鞋| 国内揄拍国内精品久久| 亚洲电影天堂av| 亚洲免费观看在线视频| 亚洲一区激情| 久久免费国产| 欧美激情在线播放| 欧美激情一区二区三区蜜桃视频| 欧美成人一区二区三区片免费| 亚洲精品综合精品自拍| 中文精品99久久国产香蕉| 亚洲少妇一区| 美女日韩在线中文字幕| 欧美日韩直播| 在线观看精品| 欧美精品aa| 欧美视频一区二区在线观看| 国产亚洲精品福利| 在线中文字幕不卡| 欧美成人日韩| 亚洲第一精品在线| 欧美成人一二三| 蜜臀av一级做a爰片久久| 在线视频国产日韩| 麻豆精品网站| 麻豆精品视频| 在线播放亚洲| 久久久噜噜噜久久人人看| 亚洲自拍16p| 国产一区二区三区奇米久涩| 国产一区二区三区日韩| 久久久久看片| 亚洲丝袜av一区| 久久激情五月丁香伊人| 国产一区二区三区网站| 久久综合中文| 欧美日韩成人免费| 久久精品国产999大香线蕉| 亚洲女女女同性video| 国产亚洲欧美在线| 亚洲国产免费看| 米奇777超碰欧美日韩亚洲| 一本色道久久| 久久精品国产欧美亚洲人人爽| 亚洲精品免费在线播放| 亚洲男人的天堂在线| 91久久亚洲| 久久aⅴ国产欧美74aaa| 亚洲一区在线播放| 亚洲女人小视频在线观看| av成人天堂| 亚洲国产精品精华液2区45| 99在线精品观看| 亚洲第一中文字幕| 性做久久久久久| 香港久久久电影| 欧美国产日产韩国视频| 久久亚洲综合色一区二区三区| 欧美日韩国产在线| 亚洲欧洲免费视频| 亚洲精品一区二区在线| 老司机精品视频一区二区三区| 久久精选视频| 国产一区二区三区高清在线观看| 亚洲永久在线| 久久久在线视频| 亚洲国产精品女人久久久| 麻豆av一区二区三区| 欧美高潮视频| 99国产麻豆精品| 欧美深夜福利| av成人天堂| 久久综合狠狠综合久久综青草| 国内成+人亚洲| 免费成人在线观看视频| 亚洲裸体俱乐部裸体舞表演av| 亚洲一区二区三区四区视频 | 欧美日韩在线大尺度| 亚洲精品一二三| 亚洲欧美日韩精品久久久| 国产一区二区三区在线观看网站| 久久久久国产精品人| 一区二区欧美日韩视频| 久久久久久久综合狠狠综合| 韩国v欧美v日本v亚洲v| 欧美日韩国产精品自在自线| 欧美成人午夜77777| 午夜久久一区| 亚洲激情视频在线| 美国十次了思思久久精品导航| 亚洲午夜激情网页| 在线观看一区视频| 国产视频不卡| 国产精品www网站| 欧美日本在线播放| 狼狼综合久久久久综合网| 亚洲综合视频在线| 亚洲视频在线观看网站| av不卡在线观看| 亚洲片区在线| 亚洲人成亚洲人成在线观看| 欧美激情精品久久久久久久变态| 久久久一区二区三区| 麻豆精品视频在线观看| 麻豆成人在线播放| 欧美色欧美亚洲另类二区| 美国三级日本三级久久99| 久久免费视频一区| 亚洲激情成人网| 一区二区三区日韩在线观看| 亚洲国产黄色片| 亚洲专区在线| 久久米奇亚洲| 欧美日本免费一区二区三区| 国产精品美女午夜av| 国内精品福利| 亚洲一区二区高清| 久久全球大尺度高清视频| 亚洲国产日本| 亚洲欧洲99久久| 欧美成人a∨高清免费观看| 欧美无砖砖区免费| 99视频+国产日韩欧美| 久久精品国产亚洲5555| 亚洲国产高清一区| 亚洲网在线观看| 欧美在线视频导航| 欧美精品国产精品| 国产亚洲欧美中文| 中日韩美女免费视频网址在线观看| 亚洲欧美另类综合偷拍| 亚洲国产另类久久久精品极度| 欧美一区二区视频免费观看| 欧美日韩一区精品| 一区二区电影免费观看| 亚洲二区在线视频| 久久久另类综合| 国产真实久久| 猫咪成人在线观看| 男人插女人欧美| 亚洲精品一区二区网址| 亚洲人成网在线播放| 美国三级日本三级久久99| 国产一区二区三区在线观看免费| 亚洲欧美日韩在线播放| aa成人免费视频| 欧美日韩在线一区二区三区| 夜夜嗨av一区二区三区四季av | 国产欧美日韩91| 午夜精品电影| 亚洲性线免费观看视频成熟| 欧美精品久久久久久久久老牛影院| 亚洲国产高清视频| 亚洲欧洲在线一区| 国产欧美日韩免费| 欧美肥婆在线| 国产精品美腿一区在线看| 久久亚洲二区| 国产精品video| 欧美国产视频在线观看| 欧美无砖砖区免费| 亚洲国产精品久久久久| 国产精品蜜臀在线观看| 亚洲福利视频二区| 国内精品久久久久久| 一个色综合导航| 亚洲精品字幕| 欧美成人福利视频| 老鸭窝毛片一区二区三区| 乱码第一页成人| 欧美怡红院视频| 欧美理论电影在线播放| 久久成人精品无人区| 国产精品久久久久永久免费观看| 欧美r片在线| 在线精品国产成人综合| 午夜精品99久久免费| 欧美一级日韩一级| 国产精品色一区二区三区| 亚洲美女精品久久| 亚洲免费精彩视频| 欧美日韩综合在线| 亚洲一区区二区| 久久久999| 亚洲黄色成人网| 欧美日韩一区免费|