需要求长方体的体积,请编写一个基于对象的程序。数据成员包括length(长)、width(宽)、 height(高)。要求用成员函数实现以下功能:
(1) 由键盘分别输入长方柱的长、宽、高。
(2) 计算并输出长方柱的体积;(若输入有负数则输出:error)
#include<iostream>
using namespace std;
class A {//class声明一个类,类名为A,在类里写我们所需要的数据员;
public://public声明以下内容为公有部分可以被对象访问和调用;
double getl() {//编写函数获取长方体的长,以下getw,geth分别为获取宽和高的函数;
cin >> l;
return l;
}
double getw() {
cin >> w;
return w;
}
double geth() {
cin >> h;
return h;
}
void area(A &op) {//计算并输出体积,为了提高运行效率这里的形参为A &op为向函数传递对象引用;
double a;
a=l*w*h;
cout << a;
}
private://private声明的为类的私有部分,私有部分不可以被类以外的对象访问和调用,只能在类里被调用;
double l, w, h;
};
int main() {
A op1;//创建一个对象op1,该对象属于A这个类;
double a=op1.getl();//调用类的成员函数,将成员函数的返回值赋给变量a,下同,调用格式见下;
double b=op1.getw();
double c=op1.geth();
if (a >= 0&&b>=0&&c>=0) {//因为题目要求如果输入是负数直接输出error,所以这里用if语句去判断输入是否为负数;
op1.area(op1);//调用area函数计算体积,因为函数的形参要求传对象的引用所以这里将实参op1传给函数
}
else {
cout << "error" << endl;
}
return 0;
}
//普通对象调用格式:对象名.数据成员(或函数);
//对象引用调用格式:对象名.数据成员(或函数);
//对象指针调用格式:指针名->数据成员(或函数);