C++ 入門指南 4.01
練習 12.10 參考程式 - 練習設計遊戲類別的建構函數
// 引入標準程式庫中相關的輸入、輸出程式 #include <iostream> // std 為標準程式庫的命名空間 using namespace std; // 宣告 Guess 類別 class Guess { // 宣告 public 成員 public: Guess(); Guess(string); string get_a(); private: string answer; void set_a(string); }; // 實作建構函數 Guess::Guess() { set_a("0"); } Guess::Guess(string a) { set_a(a); } // 實作 setter 成員函數 void Guess::set_a(string n) { answer = n; } // 實作 getter 成員函數 string Guess::get_a() { return answer; } // 宣告 Game 類別 class Game { // 宣告 public 成員 public: Game(Guess); string get_g(); void Run(); private: Guess guess; void set_g(Guess); }; // 實作建構函數 Game::Game(Guess g) { set_g(g); } // 實作 Game 類別的 setter 成員函數 void Game::set_g(Guess g) { guess = g; } // 實作 Game 類別的 getter 成員函數 string Game::get_g() { return guess.get_a(); } // 實作 Game 的 Run() 成員函數 void Game::Run() { // 印出 answer cout << endl; cout << guess.get_a() << endl; cout << endl; } int main(void) { // 宣告建立 Guess 物件 Guess g("0"); // 宣告建立執行 Game 物件 Game game(g); game.Run(); // 最後回傳 0 給作業系統 return 0; } /* 《程式語言教學誌》的範例程式 http://kaiching.org/ 檔名:exercise1210.cxx 編譯:g++ exercise1210.cxx 執行:./a.out 功能:C++入門指南單元十二的練習 作者:張凱慶 */