设计立方体类(求出立方体的面积和体积 分别用全局函数和成员函数判断两个立方体是否相等)
生活随笔
收集整理的這篇文章主要介紹了
设计立方体类(求出立方体的面积和体积 分别用全局函数和成员函数判断两个立方体是否相等)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
練習案例1:設計立方體類
設計立方體類(Cube)
求出立方體的面積和體積
分別用全局函數和成員函數判斷兩個立方體是否相等。
#include <iostream> using namespace std; //立方體類設計 //1.創建立方體類 //2.設計屬性 //3.設計行為 獲取立方體的面積和體積 //4.分別利用全局函數和成員函數 判斷兩個立方體是否相等 class Cube { public://設置長void setL(int l){m_L=l;}//獲取長int getL(){return m_L;}//設置寬void setW(int w){m_W=w;}//獲取寬int getW(){return m_W;}//設置高void setH(int h){m_H=h;}//獲取高int getH(){return m_H;}//獲取立方體的面積int calculateS(){return 2*(m_L*m_W+m_L*m_H+m_W*m_H);}//獲取立方體的體積int calculateV(){return m_L*m_W*m_H;}//利用成員函數判斷兩個立方體是否相等bool isSameByClass(Cube& c){if(m_L==c.getL() && m_W==c.getW() && m_H==c.getH()){return true;}} private :int m_L; //長int m_W; //寬int m_H; //高 }; //利用全局函數判斷 兩個立方體是否相等 bool isSame(Cube& c1,Cube& c2){if(c1.getL()==c2.getL() && c1.getW()==c2.getW() && c1.getH()==c2.getH()){return true;} } int main() {//創建一個立方體對象Cube c1;c1.setL(10);c1.setW(10);c1.setH(10);cout<<"c1的面積為:"<<c1.calculateS()<<endl;cout<<"c1的體積為:"<<c1.calculateV()<<endl;//創建第二個立方體Cube c2;c2.setL(10);c2.setW(10);c2.setH(10);//利用全局函數判斷的bool ret=isSame(c1,c2);if(ret){cout<<"全局函數判斷:c1和c2是相等的"<<endl;}else{cout<<"全局函數判斷:c1和c2是不相等的"<<endl;}//利用成員函數判斷ret=c1.isSameByClass(c2);if(ret){cout<<"成員函數判斷:c1和c2是相等的"<<endl;}else{cout<<"成員函數判斷:c1和c2是不相等的"<<endl;}system("pause");return 0; }練習案例2:點和圓的關系
設計一個圓形類(Circle),和一個點類(Point),計算點和圓的關系。
#include <iostream> using namespace std; //點和圓的關系案例 //點類 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; }; //圓類 class Circle{ public:void setR(int r){m_R=r;}int getR(){return m_R;}void setCenter(Point center){m_Center=center;}Point getCenter(){return m_Center;} private:int m_R; //半徑//在類中可以讓另一個類 作為本類的一個成員Point m_Center; }; //判斷點和圓的關系 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(10);center.setY(0);c.setCenter(center);//創建點Point p;p.setX(10);p.setY(11);isInCircle(c,p);system("pause");return 0; }point.h
#pragma once #include <iostream> using namespace std; //點類 class Point{ public:void setX(int x);int getX();void setY(int y);int getY(); private:int m_X;int m_Y; };point.cpp
#include "point.h" void Point::setX(int x){m_X=x;} int Point::getX(){return m_X; } void Point::setY(int y){m_Y=y; } int Point::getY(){return m_Y; }circle.h
#pragma once #include <iostream> using namespace std; #include "point.h" //圓類 class Circle{ public:void setR(int r);int getR();void setCenter(Point center);Point getCenter(); private:int m_R; //半徑//在類中可以讓另一個類 作為本類的一個成員Point m_Center; };circle.cpp
#include "circle.h" void Circle::setR(int r){m_R=r; } int Circle::getR(){return m_R; } void Circle::setCenter(Point center){m_Center=center; } Point Circle::getCenter(){return m_Center; }stars.cpp
#include <iostream> using namespace std; #include "circle.h" #include "point.h" //判斷點和圓的關系 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(10);center.setY(0);c.setCenter(center);//創建點Point p;p.setX(10);p.setY(11);isInCircle(c,p);system("pause");return 0; }總結
以上是生活随笔為你收集整理的设计立方体类(求出立方体的面积和体积 分别用全局函数和成员函数判断两个立方体是否相等)的全部內容,希望文章能夠幫你解決所遇到的問題。