#include using namespace std; //範例目的:練習繼承性(Inheritance),練習『父類別,子類別』 //範例目的:使用protected讓子類別來使用函數來設定參數 //範例目的:要建立兩個類別:Shape,Circle //探討主題:這裡在探討三種區域的成員參數與函數的使用權限: 『父類別,子類別,user物件變數』 ///////////// 父類別:Shape class Shape { //『父類別』可以使用private參數,但是『子類別, user物件變數』無法使用 private參數 private: double area; double girth; //『父類別,子類別』可以使用protected:區的函數,讓子類別來使用函數setArea()來設定參數area, //但是『user物件變數』卻無法使用protected:區的函數setArea() protected: void setArea(double myarea) { if(myarea > 0) area = myarea; else area = 0; } //『父類別,子類別,user物件變數』都可以使用public:裡面的參數、函數 public: Shape() { area = 0; girth = 0; } double getArea() { return area; } }; /////////////// 子類別class:Circle // 繼承 : public Shape class Circle : public Shape { private: double radius; public: void setRadiu(double myradius) { radius = myradius; //然後使用父類別=>protected區的=>setArea() setArea(3.14159*myradius*myradius); } }; ////////////////////// int main(int argc, char** argv) { //1.父類別Shape //2.子類別Cicle Circle a1; cout<<"area = "<