国产18禁黄网站免费观看,99爱在线精品免费观看,粉嫩metart人体欣赏,99久久99精品久久久久久,6080亚洲人久久精品

計算機等級考試二級C++各章內容摘要:第6章

時間:2008-10-05 18:47:00   來源:無憂考網     [字體: ]
第6章 類和對象
  【考點一】 類的定義
  1.類的定義類的定義可以分為兩部分:說明部分和實現部分。說明部分說明類中包含的數據成員和成員函數,實現部分是對成員函數的定義。類定義的一般格式如下://類的說明部分class<類名>{public:<成員函數或數據成員的說明>//公有成員,外部接口protected:<數據成員或成員函數的說明>//保護成員private:<數據成員或成員函數的說明>//私有成員};//類的實現部分<各個成員函數的實現>

   其中,class是聲明類的關鍵字;<類名>是要聲明的類的名字,必須符合標識符定義規(guī)則;花括號表示類的聲明范圍,說明該類的成員,其后的分號表示類聲明結束。類的成員包括數據成員和成員函數,分別描述類所表達的問題的屬性和行為。關鍵字public、private和protected稱為訪問權限修飾符,它們限制了類成員的訪問控制范圍。各個成員函數的實現即可以在類體內定義,也可以在類體外定義。如果一個成員函數在類體內進行了定義,它將不出現在類的實現部分;如果所有的成員函數都在類體內進行了定義,則可以省略類的實現部分。在類體內定義的成員函數都是內聯函數。

  2.類成員的訪問控制類中提供了3種訪問控制權限:公有(public)、私有(private)和保護(protected)。其中,公有類型定義了類的外部接口,任何一個外部的訪問都必須通過外部接口進行;私有類型的成員只允許本類的成員函數訪問,來自類外部的任何訪問都是非法的;保護類型介于公有類型和私有類型之間,在繼承和派生時可以體現出其特點。

  3.類的數據成員類中的數據成員描述類所表達的問題的屬性。數據成員在類體中進行定義,其定義方式與一般變量相同,但對數據成員的訪問要受到訪問權限修飾符的控制。在定義類的數據成員時,要注意以下幾個問題。(1)類中的數據成員可以是任意類型,包括整型、浮點型、字符型、數組、指針和引用等,也可以是對象。但是要注意,只有另外一個類的對象,才可以作為該類的成員,即作為該類的成員對象而存在。自身類的對象是不可以作為自身類的成員存在的,但自身類的指針可以。(2)在類體中不允許對所定義的數據成員進行初始化。

  4.類的成員函數類的成員函數描述類所表達的問題的行為。類中所有的成員函數都必須在類體內進行說明。但成員函數的定義既可以在類體內給出,也可以在類體外給出。第一種方式是將成員函數直接定義在類的內部。第二種方式是在類聲明中給出對成員函數的說明,而在類外部對成員函數進行定義(但成員函數仍然在類范圍內)。這種在類外部定義的成員函數的一般格式是:<返回類型><類名>::<成員函數名>(<參數表>){<函數體>}在類體外定義成員函數時,要注意必須在成員函數名前加上類名和作用域運算符(::)。作用域運算符用來標識某個成員屬于某個類。作用域運算符的使用格式如下:<類名>::<成員函數名>(<參數表>)或<類名>::<數據成員名>成員函數的兩種定義方式之間是有差別的。如果一個成員函數的聲明和定義都在類體內,那么這個成員函數就是內聯函數。如果一個成員函數的聲明在類體內,而定義在類體外,這時對該成員函數的調用是按一般函數進行的。如果要將定義在類體外的成員函數也作為內聯函數處理,就必須在成員函數的定義前加上關鍵字"inline",以此顯式地說明該成員函數也是一個內聯函數。成員函數除了可以定義為內聯函數以外,也可以進行重載,可以對其參數設置默認值。