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++入門指南單元十二的練習
作者:張凱慶 */
回到練習題目