[C++] 函式
函式 (function)
• 讓你可以「重複使用」某段程式碼• 將細節 (運作方式) 包裝在副函式裡,使用者只需知道其輸入、輸出,不需管內部怎麼做,主函式只需不斷重複使用這些副函式
• 一個程式的功能 : 讀進輸入 → 內部運作 → 產生輸出
• 一個函式的功能 : 吃進參數 → 內部運作 → 回傳結果
• 一個程式就是一個大函式,一個程式從主函式開始,主函式結束
• 增加可讀性、可重複性
• A callable subprogram
• Abstraction (抽象化)
• 隱藏 low - level 的細節
• 給程式 high - level 的結構,讓 programmer 容易了解整個程式的流程
• Enables separable, independent development function (錯了修改 function 內容就好)
• 分主函式 (main function)、副函式 (sub functions)
C++ functions
• 傳入零個或多個參數,回傳零個或一個結果• 函數是多對一
• 回傳值有型別
Function declaration , function prototype (函式宣告、函式原型)
• 描述函式之特徵 – 函式名稱、參數與其型別、回傳型別 (參數名稱可省略)• A function signature (or type signature, or method signature) defines input and output of functions or methods.
語法:
回傳值之型別 函式名稱 (參數型別 參數名稱) ;
Function Definition (函式定義)
• 描述回傳型別、函式名稱 、參數型別• 給每個參數一個名稱 (不需要與函式宣告一致)
• 回傳型別、函式名稱 、參數型別需與函式宣告一致
語法:
回傳值之型別 函式名稱 (參數型別 參數名稱)
{
/* 函式內容 */
}
Function call (函式呼叫) - 在 expression 中使用
語法:a = x + factorial (f + g) ;
留言
張貼留言