posts - 66,  comments - 40,  trackbacks - 0
          1、如果程序員想允許不屬于當前結構的一個成員函數存取結構中的數據,那該怎么辦呢?他可以在s t r u c t內部聲明這個函數為友元。注意,一個友元必須在一個 s t r u c t內聲明,這一點很重要,因為他(和編譯器)必須能讀取這個結構的聲明以理解這個數據類型的大小、行為等方面的規則。
          2、在C + +中,定義和初始化是同一概念,不能只取其中之一。
          3、構造函數和析構函數是兩個非常特殊的函數:它們沒有返回值。這與返回值為 v o i d的函數顯然不同。后者雖然也不返回任何值,但我們還可以讓它做點別的。而構造函數和析構函數則不允許。在程序中創建和消除一個對象的行為非常特殊,就像出生和死亡,而且總是由編譯器來調用這些函數以確保它們被執行。如果它們有返回值,要么編譯器必須知道如何處理返回值,要么就只能由用戶自己來顯式地調用構造函數與析構函數,這樣一來,安全性就被破壞了。
          4、析構函數的語法與構造函數一樣,用類的名字作函數名。然而析構函數前面加上一個 ~,以和構造函數區別。另外,析構函數不帶任何參數,因為析構不需任何選項。下面是一個析構函數的聲明:
          class Y {
          p u b l i c :
          ~ Y ( ) ;
          } ;
          5、一般說來,應該在盡可能靠近變量的使用點定義變量,并在定義時就初始化(這是對預定義類型的一種建議,但在那里可以不做初始化)。這是出于安全性的考慮,減少變量誤用的可能性。另外,程序的可讀性也增強了,因為讀者不需要跳到程序頭去確定變量的類型。
          6、函數重載,通過范圍和參數,不能通過返回值
          7、缺省參數是在函數聲明時就已給定的一個值,如果我們在調用函數時沒有指定這一參數的值,編譯器就會自動地插上這個值。我們可以把:
          stash(int? Size);// zero? quantity
          stash(int? Size,int? Quantity);
          用一個函數聲明來代替
          stash(int Size, int? Quantity=0);
          這樣,s t a s h ( i n t )定義就簡化掉了——所需要的是一個單一的s t a s h ( i n t , i n t )定義。
          現在這兩個對象的定義
          stash? A(100),B(100,0);
          將會產生完全相同的結果。它們將調用同一個構造函數,但對于 A,它的第二個參數是由編譯
          器在看到第一個參數是整型而且沒有第二個參數時自動加上去的。
          posted on 2006-12-06 16:07 happytian 閱讀(152) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2006年12月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          Welcome here, my friend!

          常用鏈接

          留言簿(12)

          隨筆檔案(66)

          文章分類

          文章檔案(63)

          web

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 89316
          • 排名 - 647

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 睢宁县| 新和县| 达拉特旗| 桦甸市| 土默特左旗| 绥棱县| 徐汇区| 白山市| 海兴县| 丽江市| 扎囊县| 中卫市| 海口市| 浮山县| 景洪市| 翁源县| 乌审旗| 毕节市| 太仓市| 随州市| 灵石县| 禹州市| 凤冈县| 呼图壁县| 烟台市| 措美县| 东光县| 泰来县| 桐乡市| 微山县| 葵青区| 香港| 盐城市| 东源县| 大埔区| 南部县| 兴安县| 兴隆县| 二手房| 石棉县| 南靖县|