C++ 入門指南 4.01
練習 13.2 參考程式 - 練習設計階層數類別的標頭檔
exercise1302.h
// 宣告 FactorialDemo 類別 class FactorialDemo { // 宣告 public 成員 public: FactorialDemo(int); int get_value(); // 宣告 private 成員 private: int value; void set_value(int); }; /* 《程式語言教學誌》的範例程式 http://kaiching.org/ 檔名:exercise1302.h 功能:C++入門指南單元十三的練習 作者:張凱慶 */
exercise1302.cxx
// 須引進標頭檔 #include "exercise1302.h" // 實作建構函數 FactorialDemo::FactorialDemo(int n) { set_value(n); } // 實作 setter 成員函數 void FactorialDemo::set_value(int p) { // 計算到 n 的階層 int result = 1; for (int i = 1; i <= p; i++) { result *= i; } value = result; } // 實作 getter 成員函數 int FactorialDemo::get_value() { return value; } /* 《程式語言教學誌》的範例程式 http://kaiching.org/ 檔名:exercise1302.cxx 編譯:g++ exercise1302.cxx exercise1302_demo.cxx 執行:./a.out 功能:C++入門指南單元十三的練習 作者:張凱慶 */
exercise1302_demo.cxx
// 引入標準程式庫中相關的輸入、輸出程式 #include <iostream> // 須引進標頭檔 #include "exercise1302.h" // std 為標準程式庫的命名空間 using namespace std; int main(void) { // 接收使用者輸入 int input; cin >> input; // 宣告建立 FactorialDemo 物件 FactorialDemo a(input); // 印出使用者指定的階層數 cout << a.get_value() << endl; cout << endl; // 最後回傳 0 給作業系統 return 0; } /* 《程式語言教學誌》的範例程式 http://kaiching.org/ 檔名:exercise1302_demo.cxx 編譯:g++ exercise1302.cxx exercise1302_demo.cxx 執行:./a.out 功能:C++入門指南單元十三的練習 作者:張凱慶 */