练习案例:设计立方体类
设计立方体类(Cube)
求出立方体的面积和体积
分别用全局函数和成员函数判断两个立方体是否相等。
思路:
1)创建立方体类
2)设计属性 长,高,宽
3)设计行为 获取立方体面积和体积
4)分别利用全局函数和成员函数 判断两个立方体是否相等
示例代码
#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 caculateS(){return (2 * m_L * m_W) + (2 * m_H * m_W) + (2 * m_L * m_H);}//获取立方体体积int caculateV(){return m_L * m_W * m_H;}//利用成员函数判断两个立方体是否相等bool isSameByClass(Cube &c){if (m_L == c.getL() && m_W == c.getW() && m_L == c.getL()){return true;}elsereturn false;}private:int m_L; //长int m_W; //宽int m_H; //高
};//利用全局函数判断 两个立方体是否相等
bool isSame(Cube &c1,Cube &c2)
{if (c1.getL() == c2.getL() && c1.getW() == c1.getW() && c1.getH() == c2.getH()){return true;}elsereturn false;
}int main()
{//创建立方体对象Cube c1;c1.setL(10);c1.setW(10);c1.setH(10);cout << "c1的面积为:" << c1.caculateS() << endl;cout << "c1的体积为:" << c1.caculateV() << endl;//创建第二个立方体Cube c2;c2.setL(10);c2.setW(10);c2.setH(10);cout << "c2的面积为:" << c2.caculateS() << endl;cout << "c2的体积为:" << c2.caculateV() << endl;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;
}
运行结果
c1的面积为:600
c1的体积为:1000
c2的面积为:600
c2的体积为:1000
c1和c2是相等的
成员函数判断:c1和c2是相等的