类和对象:
案例1:
设计立方体类(Cube)
- 求出立方体的面积和体积
- 分别用全局函数和成员函数判断两个立方体是否相等。
设计方法:
- 创建立方体类
- 设计属性
- 设计行为 求立方体面积和体积
- 分别用全局和成员函数 判断立方体是否相等
#include<iostream>
using namespace std;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_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.getH() == c2.getH() && c1.getL() == c2.getL() && c1.getW() == c2.getW())return true;return false;
}int main()
{Cube c1;c1.setL(10);c1.setH(10);c1.setW(10);cout << "c1的面积为: " << c1.calculateS() << endl;cout << "c1的体积为: " << c1.calculateV() << endl;//创建立方体c2Cube c2;c2.setL(10);c2.setH(10);c2.setW(10);cout << "c2的面积为: " << c2.calculateS() << endl;cout << "c2的体积为: " << c2.calculateV() << endl;//利用全局函数判断bool ret = isSame(c1, c2);//注意不要漏数据类型if (ret == true)cout << "立方体完全相等" << endl;elsecout << "立方体不完全相等" << endl;//利用成员函数判断ret = c1.isSameByClass(c2);if (ret == true)cout << "成员函数判断: 立方体完全相等" << endl;elsecout << "成员函数判断: 立方体不完全相等" << endl;system("pause");return 0;
}
运行结果如下:
设计完成