C++ 入門指南 4.01

練習 13.8 參考程式 - 練習設計乒乓球類別的標頭檔

exercise1308.h

// 引入標準程式庫中相關的 string
#include <string>

// 引入 Point 類別
#include "exercise1304.h"

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

// 宣告 Ball 類別
class Ball {
// 宣告 public 成員
public:
    Ball(Point);
    string get_p();

private:
    Point p;
    void set_p(Point);
};

/* 《程式語言教學誌》的範例程式
   http://kaiching.org/
   檔名:exercise1308.h
   功能:C++入門指南單元十三的練習
   作者:張凱慶 */

exercise1308.cxx

// 引入標準程式庫中相關的 string
#include <string>

// 須引進標頭檔
#include "exercise1308.h"

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

// 實作建構函數
Ball::Ball(Point n) {
    set_p(n);
}

// 實作 Ball 類別的 setter 成員函數
void Ball::set_p(Point n) {
    p = n;
}

// 實作 Ball 類別的 getter 成員函數
string Ball::get_p() {
    return p.get_point();
}

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

exercise1308_demo.cxx

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

// 須引進標頭檔
#include "exercise1308.h"

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

int main(void) {
    // 宣告建立 Point 物件
    Point p(0 ,0);
    // 宣告建立 Ball 物件
    Ball b(p);

    // 印出座標
    cout << endl;
    cout << b.get_p() << endl;
    cout << endl;

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

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

上一頁 練習 13.7 參考程式 - 練習設計文字類別的標頭檔
回 C++ 入門指南 4.01 目錄
下一頁 練習 13.9 參考程式 - 練習設計場景類別的標頭檔
回 C++ 教材
回程式語言教材首頁