C++ 入門指南 4.01

練習 12.2 參考程式 - 練習設計階層類別的建構函數

// 引入標準程式庫中相關的輸入、輸出程式
#include <iostream>

// std 為標準程式庫的命名空間
using namespace std;

// 宣告 FactorialDemo 類別
class FactorialDemo {
// 宣告 public 成員
public:
    FactorialDemo(int);
    int get_value();

// 宣告 private 成員
private:
    int value;
    void set_value(int);
};

// 實作建構函數
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;
}

int main(void) {
    // 接收使用者輸入
    int input;
    cin >> input;

    // 宣告建立 FactorialDemo 物件
    FactorialDemo a(input);

    // 印出使用者指定的階層數
    cout << a.get_value() << endl;
    cout << endl;

    // 最後回傳 0 給作業系統
    return 0;
}

/* 《程式語言教學誌》的範例程式
   http://kaiching.org/
   檔名:exercise1202.cxx
   編譯:g++ exercise1202.cxx
   執行:./a.out
   功能:C++入門指南單元十二的練習
   作者:張凱慶 */
回到練習題目

上一頁 練習 12.1 參考程式 - 練習設計整數計算類別的建構函數
回 C++ 入門指南 4.01 目錄
下一頁 練習 12.3 參考程式 - 練習設計費氏數列類別的建構函數
回 C++ 教材
回程式語言教材首頁