C++类的案例(二)
生活随笔
收集整理的這篇文章主要介紹了
C++类的案例(二)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
圖片摘自:
黑馬程序員匠心之作|C++教程從0到1入門編程,學習編程不再難_嗶哩嗶哩_bilibilihttps://www.bilibili.com/video/BV1et411b73Z?p=105
?點和圓的關系就三種,圓上,圓外,圓內
首先創建一個圓類
class Circle
{
public:void setR(int r){m_R = r;}int getR(){return m_R;}void setCenter(Point center){m_Center = center;}Point getCenter() //這塊為什么返回的不是int類型呢 下面說了這個圓心的類型是圓類{ //就像你定義一個int的東西 ,你準備拿char來接收return m_Center; //實在理解不了的直接理解為結構體就好 類似于結構體定義的數據類型}
private:int m_R;Point m_Center; //圓心的類型是圓類
};
創建圓心類
class Point //屬性一般私有 同時提供端口函數對屬性操作
{
public:void setX(int x){m_X = x;}int getX(){return m_X;}void setY(int y){m_Y = y;}int getY(){return m_Y;}private:int m_X;int m_Y;
};
判斷函數:
void isInCircle(Circle &c, Point &p)
{int distance = //根號操作不方便 直接對倆邊都進行平方 根號就無了(c.getCenter().getX() - p.getX()) * (c.getCenter().getX() - p.getX()) +(c.getCenter().getY() - p.getY()) * (c.getCenter().getY() - p.getY());int rDistance = c.getR() * c.getR();if (distance == rDistance){cout << "點在圓上" << endl;}else if (distance > rDistance){cout << "點在圓外" << endl;}else{cout << "點在圓內" << endl;}
}
附上主函數:
int main()
{Circle c;c.setR(10); //定義半徑Point center;center.setX(0); //定義圓心center.setY(0);c.setCenter(center);Point p;p.setX(10); //定義需要計算的點p.setY(0);isInCircle(c,p);system("pause");return 0;
}
開拓視野,沖破艱險,看見世界,身臨其境,貼近彼此,感受生活,這就是生活的目的
總結
以上是生活随笔為你收集整理的C++类的案例(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++类的案例(一)
- 下一篇: 云端问仙天雷经怎么获得?