其他分享
首页 > 其他分享> > 建立立方体通过全局和成员函数比较两个立方体面积和体积是否相等!

建立立方体通过全局和成员函数比较两个立方体面积和体积是否相等!

作者:互联网

一、建立立方体类

class cube {
public://公共
	//设置长
	void setL(float l) {
		L = l;
		
	}
	//获取长
	float getL() {
		return L;
	}
	//设置宽
	void setW(float w) {
		W= w;
		
	}
	//获取宽
	float getW() {
		return W;
	}
	//设置高
	void setH(float h) {
		H = h;
		
	}
	//获取高
	float getH() {
		return H;
	}
	//求立方体的面积
	void getcubeS() {
		float s = 2 * L * W + 2 * L * H + 2 * W * H;
		cout << "立方体的面积:" << s << endl;
	}
	//求立方体的面积
	void getcubeV() {
		float v = L * W * H;
		cout << "立方体的体积:" << v << endl;
	}
	bool compareClass(cube& cube) {
		//第一种判断方法
		bool a2 = L == cube.getL() && W ==cube.getW() && H == cube.getH();
		return a2;
	}
private://私有
	float L;//长
	float W;//宽
	float H;//高
};
bool compare(cube& cube1, cube& cube2) {
	//第二种判断方法(与第一种判断方法效果一样,只是代码不同)
	if (cube1.getL() == cube2.getL() && cube1.getW() == cube2.getW() && cube1.getH() == cube2.getH() ){
		return true;
	}
	return false;
}

立方体类中包含判断两个立方体是否相等的成员函数

 bool compareClass(cube& cube) {
        //第一种判断方法
        bool a2 = L == cube.getL() && W ==cube.getW() && H == cube.getH();
        return a2;
    }

二、全局函数判断两个立方体是否相等

 

bool compare(cube& cube1, cube& cube2) {
	//第二种判断方法(与第一种判断方法效果一样,只是代码不同)
	if (cube1.getL() == cube2.getL() && cube1.getW() == cube2.getW() && cube1.getH() == cube2.getH() ){
		return true;
	}
	return false;
}

三、完整源代码

#define _CRT_SECURE_NOWARNINGS//宏定义,防止调用函数时报错
#include <iostream>
using namespace std;
class cube {
public://公共
	//设置长
	void setL(float l) {
		L = l;
		
	}
	//获取长
	float getL() {
		return L;
	}
	//设置宽
	void setW(float w) {
		W= w;
		
	}
	//获取宽
	float getW() {
		return W;
	}
	//设置高
	void setH(float h) {
		H = h;
		
	}
	//获取高
	float getH() {
		return H;
	}
	//求立方体的面积
	void getcubeS() {
		float s = 2 * L * W + 2 * L * H + 2 * W * H;
		cout << "立方体的面积:" << s << endl;
	}
	//求立方体的面积
	void getcubeV() {
		float v = L * W * H;
		cout << "立方体的体积:" << v << endl;
	}
	bool compareClass(cube& cube) {
		//第一种判断方法
		bool a2 = L == cube.getL() && W ==cube.getW() && H == cube.getH();
		return a2;
	}
private://私有
	float L;//长
	float W;//宽
	float H;//高
};
bool compare(cube& cube1, cube& cube2) {
	//第二种判断方法(与第一种判断方法效果一样,只是代码不同)
	if (cube1.getL() == cube2.getL() && cube1.getW() == cube2.getW() && cube1.getH() == cube2.getH() ){
		return true;
	}
	return false;
}
void test01() {
	//第一个立方体
	cube c1;
	float l1,w1,h1;
	cout << "输入第一个立方体的长:" << endl;
	cin >>l1;
	cout<< "输入第一个立方体的宽:" << endl;
	cin >> w1;
	cout << "输入第一个立方体的高:" << endl;
	cin >> h1;
	c1.setL(l1);
	c1.setW(w1);
	c1.setH(h1);
	c1.getcubeS();
	c1.getcubeV();
	//第二个立方体
	cube c2;
	float l2, w2, h2;
	cout << "输入第二个立方体的长:" << endl;
	cin >> l2;
	cout << "输入第二个立方体的宽:" << endl;
	cin >> w2;
	cout << "输入第二个立方体的高:" << endl;
	cin >> h2;
	c2.setL(l2);
	c2.setW(w2);
	c2.setH(h2);
	c2.getcubeS();
	c2.getcubeV();
	//通过全局函数判断两个立方体是否相等
	bool a1 = compare(c1, c2);
	if (a1) {
		cout << "全局::c1与c2相等!" << endl;
	}
	else {
		cout << "全局::c1与c2不相等!" << endl;
	}
	//通过成员函数判断两个立方体是否相等
	bool a2=c1.compareClass( c2);
	if (a2) {
		cout << "成员::c1与c2相等!" << endl;
	}
	else {
		cout << "成员::c1与c2不相等!" << endl;
	}
}
int main() {
	test01();
	system("pause");
	return 0;
}

四、举一反三(两种判断代码书写)

1.在成员函数中用到的判断代码,具体参考上面的“立方体类中包含判断两个立方体是否相等的成员函数”。

2.在全局函数中用到的判断代码,具体参考上面的“二”。

 

标签:cube,return,cout,void,float,体积,立方体,全局
来源: https://www.cnblogs.com/guang123/p/16369407.html