#include using namespace std; /* run this program using the console pauser or add your own getch, system("pause") or input loop */ //class class Circle { private: double area; public: double radius; //double area; double showArea() { area = 3.14159*radius*radius; return area; } string compare(Circle * a1) { if(radius > a1->radius)return "大於"; else if(radius < a1->radius)return "小於"; else return "等於"; } void copy(Circle * a1) { a1->radius = radius; } }; int main(int argc, char** argv) { //1.物件函數,傳遞參數 = 若是一個很大的物件變數(影音編輯軟體裡面,傳遞一個AVI影片檔案) //缺點:會在記憶體,不斷配置很大的空間,造成記憶體擁塞 //改良方法:傳遞的參數 = 物件指標(就不會再配置新的記憶體空間) //2.物件指標 //(1)宣告 //Circle * a1; //Circle * a1 = new Circle; //(2)建立物件(配置記憶體空間),有沒有()都可以 //a1 = new ClassName //a1 = new ClassName() //3.宣告,配置記憶體 //4.指派 1 (a4 = new Circle) Circle * a1; a1 = new Circle; Circle * a2 = new Circle; Circle * a3 = new Circle(); cout<<" a1 = "<compare(a8)<<" a8 "<compare(&a10)<<" a10 "<