123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- //练习案例1:设计立方体类
- //设计立方体类(Cube)
- //求出立方体的面积和体积
- //分别用全局函数和成员函数判断两个立方体是否相等。
- //1、创建立方体类
- //2、设计属性
- //3、设计行为 获取立方体面积和体积
- //4、分别利用全局函数和成员函数 判断两个立方体是否相等
- #include <iostream>
- 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 + 2 * m_H * m_W + 2 * m_L * m_H;
- }
- //获取立方体的体积
- int calculateV()
- {
- return m_H * m_L * m_W;
- }
- //利用成员函数来判断两个立方体是否相等
- bool isSameByClass(Cube &c)
- {
- if (m_L == c.getL() && m_W == c.getW() && m_H == c.getH())
- {
- return true;
- }
- return false;
- }
- 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;
- }
- return false;
- }
- int main5()
- {
- //创建立方体对象
- Cube c1;
- c1.setL(10);
- c1.setW(10);
- c1.setH(10);
- std::cout << "c1的面积为 : " << c1.calculateS() << std::endl;
- std::cout << "c1的体积为 : " << c1.calculateV() << std::endl;
- //创建第二个立方体
- Cube c2;
- c1.setL(10);
- c1.setW(10);
- c1.setH(10);
- //利用全局函数判断
- bool ret = isSame(c1, c2);
- if (ret)
- {
- std::cout << "全局函数判断 : c1和c2是相等的" << std::endl;
- }
- else
- std::cout << "全局函数判断 : c1和c2是不相等的" << std::endl;
- //利用成员函数判断
- ret = c1.isSameByClass(c2);
- if (ret)
- {
- std::cout << "成员函数判断 : c1和c2是相等的" << std::endl;
- }
- else
- std::cout << "成员函数判断 : c1和c2是不相等的" << std::endl;
- system("pause");
- return 0;
- }
|