2017100901難點及易混淆點總結——持續更新
Time sum(constTime &t)const這兩個const分別都是什麼含義
第一個const
呼叫函式的時候,用相應的變數初始化const常量,則在函式體中,按照const所修飾的部分進行常量化,如形參為const Time& t,則不能對傳遞進來的引用物件進行改變,保護了原物件的屬性。
第二個const 類成員函式中const的使用
如果一個成員函式的不會修改資料成員,那麼最好將其宣告為const,因為const成員函式中不允許對資料成員進行修改,如果修改,編譯器將報錯,這大 大提高了程式的健壯性。
std::cout<<
在C++中使用,std 是為名稱空間,cout存放在其中,因此,在iostream標頭檔案中,你會發覺類似以下程式碼: //File iostream namespace std { extern ostream cout; //etc. } 這條語句聲明瞭cout對像為osteam型別 所以,std::cout<<“是向終端螢幕輸出”,<<是左移運算子
類的成員函式和非成員函式
類的成員函式: 類的成員函式描述的是類的行為,是程式演算法的實現部分,是對封裝的資料進行操作的方法。類的成員函式的原型要寫在類體中,原型說明了函式的引數表和返回值型別。而函式的定義一般在類外面,也可以直接在類內部定義。前者與普通函式不同的是,實現成員函式時要指明類的名稱,具體形式為:返回值型別 類名 ::函式成員名(引數表){函式體}; 而後者一般為一些短小的函式(5行以內),也就是行內函數。
介面函式
就是某個模組寫了(主要)給其它模組用的函式。簡單的說介面函式就是類中的公有函式。
事例
例如:
SendMessage(...);是一個發訊息的函式,我們無須知道它是怎麼實現的,只需要知道他能實現向某個東西傳送訊息即可
這就是介面,介面對應的就是實現。
舉個例子,介面就是攪拌機,把蘋果,橘子.梨(引數)放進去(傳送訊息)就出來果汁(結果,返回值)了.
class 攪拌機
{
private:
零件;
public:
飲料攪拌(水果); // 這個就是介面
};
int main(void)
{
攪拌機 A = new
飲料 蘋果汁 = A-> 攪拌(一個黃元帥,兩個紅富士);// 呼叫介面
delete A;
return 0;
}
介面函式和呼叫函式是有區別的,例如:APP_int()是介面函式,APP_call()是可直接呼叫的函式。介面函式要重定義方法才能被呼叫,呼叫函式可理解為已經重寫方法的介面函式,APP_call()是可直接呼叫的函式這個就不用說了,假設APP_int()是介面函式,裡面就有一個未實現方法要通過下面來實現。
如:
class tempaextends APP_init
{
//定義方法,使之成為類或可直接呼叫的函式
}