(C++核心编程)设计立方体类

设计立方体类(Cube)

求出立方体的面积和体积

分别用全局函数和成员函数判断两个立方体是否相等。

  1 #include<iostream>
  2 using namespace std;
  3 #include<string>
  4 class Cube
  5 {
  6 public:
  7 
  8     //设置长
  9     void setL(int l)
 10     {
 11         m_L = l;
 12     }
 13     //获取长
 14     int getL()
 15     {
 16         return m_L;
 17     }
 18     
 19     //设置宽
 20     void setW(int w)
 21     {
 22         m_W = w;
 23     }
 24     //获取宽
 25     int getW()
 26     {
 27         return m_W;
 28     }
 29     
 30     //设置高
 31     void setH(int h)
 32     {
 33         m_H = h;
 34     }
 35     //获取高
 36     int getH()
 37     {
 38         return m_H;
 39     }
 40     
 41     //获取立方体面积
 42     int calculateS()
 43     {
 44         return 2 * m_L * m_W + 2 * m_L * m_H + 2 * m_H * m_W;
 45     }
 46     //获取立方体体积
 47     int calculateV()
 48     {
 49         return m_L * m_W * m_H;
 50     }
 51 
 52     //利用成员函数判断两个立方体是否相等
 53     bool isSameByClass(Cube &c)
 54     {
 55         if (m_L == c.getL() && m_W == c.getW() && m_H == c.getH())
 56         {
 57             return true;
 58         }
 59         return false;
 60     }
 61 private:
 62     int m_L;//
 63     int m_W;//
 64     int m_H;//
 65 
 66 };
 67 
 68 //利用全局函数判断 两个立方体是否相等
 69 bool isSame(Cube &c1 ,Cube &c2)
 70 {
 71     if (c1.getL() == c2.getL() && c1.getW() == c2.getW() && c1.getH() == c2.getH())
 72     {
 73         return true;
 74     }
 75     return false;
 76 }
 77 
 78 
 79 int main()
 80 {
 81     //创建立方体对象
 82     Cube c1;
 83     c1.setL(10);
 84     c1.setW(10);
 85     c1.setH(10);
 86 
 87     cout << "c1的面积为: " << c1.calculateS() << endl;
 88     cout << "c1的体积为: " << c1.calculateV() << endl;
 89     
 90     //创建第二个立方体
 91     Cube c2;
 92     c2.setL(10);
 93     c2.setW(10);
 94     c2.setH(10);
 95 
 96     //利用全局函数判断
 97     bool ret = isSame(c1, c2);
 98     if (ret)
 99     {
100         cout << "c1和c2是相等的" << endl;
101     }
102     else
103     {
104         cout << "c1和c2是不相等的" << endl;
105     }
106 
107     //利用成员函数判断
108     ret = c1.isSameByClass(c2);
109     if (ret)
110     {
111         cout << "成员函数判断: c1和c2是相等的" << endl;
112     }
113     else
114     {
115         cout << "成员函数判断: c1和c2是不相等的" << endl;
116     }
117     system("pause");
118 
119     return 0;
120 
121 }

原文地址:https://www.cnblogs.com/keepma/p/15536038.html