13 1 C const account class account private

  • Slides: 21
Download presentation

13 -1 常數物件與成員-常數成員資料 與函數(說明) 在C++類別除了建構子和解構子外,成員資料和 函數都可以使用const關鍵字來修飾。例如:帳 戶類別account的宣告,如下所示: class account { private: double amount; const

13 -1 常數物件與成員-常數成員資料 與函數(說明) 在C++類別除了建構子和解構子外,成員資料和 函數都可以使用const關鍵字來修飾。例如:帳 戶類別account的宣告,如下所示: class account { private: double amount; const double rate; public: account(double a, double r); double get. Interest() const; void print. Account() const; }; n

13 -2 -1 物件成員-student類別 n 在C++類別宣告的成員資料除了可以使用資料型 態、結構和陣列變數外,也可以使用其他類別的 物件變數。例如:student類別的宣告擁有date 物件的成員資料,如下所示: class student { private: int

13 -2 -1 物件成員-student類別 n 在C++類別宣告的成員資料除了可以使用資料型 態、結構和陣列變數外,也可以使用其他類別的 物件變數。例如:student類別的宣告擁有date 物件的成員資料,如下所示: class student { private: int id; double test 1, test 2, test 3; date *birthday; double get. Average() const; public: student(int id, int m, int y); void set. Test(double t 1, double t 2, double t 3); void print. Student() const; };

13 -2 -1 物件成員-date類別 n date類別宣告,如下所示: class date { private: int day, month, year;

13 -2 -1 物件成員-date類別 n date類別宣告,如下所示: class date { private: int day, month, year; public: date(int d, int m, int y); void print. Date() const; };

13 -2 -2 巢狀類別-範例 class student { // student外層類別宣告 private: int id; class test

13 -2 -2 巢狀類別-範例 class student { // student外層類別宣告 private: int id; class test { // test內層類別宣告 private: double score; public: double get. Score() const { return score; } void set. Score(double s) { score = s; } }; test quiz; public: student(int no) : id(no) {} void set. Score(double t); void print. Student() const; };

13 -3 靜態成員資料與函數-宣告類別 的靜態成員資料與函數 n 靜態成員資料與函數是使用static關鍵字進行宣 告。例如:student類別新增靜態變數 teacher. No、count和靜態成員函數 get. Student. Count(),如下所示: class student

13 -3 靜態成員資料與函數-宣告類別 的靜態成員資料與函數 n 靜態成員資料與函數是使用static關鍵字進行宣 告。例如:student類別新增靜態變數 teacher. No、count和靜態成員函數 get. Student. Count(),如下所示: class student { private: ……… static int count; public: ………… static int teacher. No; static int get. Student. Count() { return count; }; };

13 -4 -1 朋友函數-一般函數的朋友函 數 第 5章的函數也可以成為類別的朋友函數。例如: 類別circle授予get. Radius()函數成為它的朋友函 數,如下所示: class circle { private:

13 -4 -1 朋友函數-一般函數的朋友函 數 第 5章的函數也可以成為類別的朋友函數。例如: 類別circle授予get. Radius()函數成為它的朋友函 數,如下所示: class circle { private: int radius; public: circle(int r) : radius(r) {} void print(point &p); friend int get. Radius(circle &c); }; n