第七週專案1-點類-一般函式
阿新 • • 發佈:2019-02-17
問題及程式碼:
/* *Copyright (c) 2016,煙臺大學計算機學院 *All rights reserved. *檔名稱:zwj.cpp *作 者:張偉晶 *完成日期:2016年4月9日 *版 本 號:v1.0 * *問題描述:用一般函式設計點類求兩點之間的距離 *輸入描述: *程式輸出:兩點間距離 */ #include<iostream> #include<cmath> using namespace std; class CPoint { private: double x; // 橫座標 double y; // 縱座標 public: CPoint(double xx=0,double yy=0):x(xx),y(yy){} double getx(){return x;} double gety(){return y;} // friend double line(CPoint &p1,CPoint &p2); //友元函式的宣告 }; double line(CPoint &p1,CPoint &p2) { double x,y; x=(p1.getx()-p2.getx()); y=(p1.gety()-p2.gety()); return sqrt(x*x+y*y); } /* class Line { public: Line(CPoint xp1,CPoint xp2); Line (Line &l); double getlen(){return len;} private: CPoint p1,p2; double len; }; double line(CPoint &p1,CPoint &p2) { double x=p1.x-p2.x; double y=p1.y-p2.y; return sqrt(x*x+y*y); } */ int main() { CPoint p1(1,1),p2(4,6.2); // Line line(p1,p2); cout<<"p1為:("<<p1.getx()<<","<<p1.gety()<<")"<<endl; cout<<"p2為:("<<p2.getx()<<","<<p2.gety()<<")"<<endl; cout<<"兩點間距離為:"<<line(p1,p2)<<endl; return 0; }
執行結果:
知識點總結:
一般函式呼叫類中的成員。
學習心得:
一般函式訪問類中的函式,需要公共介面。