c22立方体案例.cpp
#include <iostream>
#include <string>
using namespace std;
class Cube{
private:
int cube_l; // 长
int cube_w; // 宽
int cube_h; // 高
public:
// 设置长
void set_l(int l){
cube_l = 1;
}
// 设置宽
void set_w(int w){
cube_w = w;
}
// 设置高
void set_h(int h){
cube_h = h;
}
// 获取长
int get_l(){
return cube_l;
}
// 获取宽
int get_w(){
return cube_w;
}
// 获取高
int get_h(){
return cube_h;
}
// 求面积
int cube_s(){
return 2*cube_l*cube_h + 2*cube_l*cube_w + 2*cube_w*cube_h;
}
// 求体积
int cube_v(){
return cube_l*cube_w*cube_h;
}
// 成员函数实现判断是否相等
bool com_cube_class(Cube &c2){
return cube_l == c2.get_l() && cube_h == c2.get_h() && cube_w == c2.get_w();
}
};
// 判断两个立方体是否相等(全局函数)
bool com_cube(Cube &c1, Cube &c2){
// 方法1:
// if(c1.get_l() == c2.get_l() && c1.get_h() == c2.get_h() && c1.get_w() == c2.get_w()){
// return true;
// }
// return false;
// 方法2:
return c1.get_l() == c2.get_l() && c1.get_h() == c2.get_h() && c1.get_w() == c2.get_w();
}
int main()
{
Cube c1;
c1.set_l(10);
c1.set_w(10);
c1.set_h(10);
Cube c2;
c2.set_l(10);
c2.set_h(10);
c2.set_w(11);
cout << "c1面积: "<< c1.cube_s()<<endl;
cout << "c1体积: " << c1.cube_v() << endl;
// 全局函数判断是否相等
// bool res = com_cube(c1, c2);
bool res = c1.com_cube_class(c2);
if(res){
cout << "相等" << endl;
}
else{
cout << "不相等" << endl;
}
return 0;
}