C++ 压缩函数在C++;
显然,我应该能够使用布尔逻辑将这六个函数压缩成三个简单的函数,它们有两种方式,但我不知道从哪里开始C++ 压缩函数在C++;,c++,C++,显然,我应该能够使用布尔逻辑将这六个函数压缩成三个简单的函数,它们有两种方式,但我不知道从哪里开始 void footToMeter(int inputfeet) { double outputMeter = ((inputfeet) / (3.281)); cout << outputMeter; } void meterToFoot(int inputmeter) { double outputFoot = ((inputmeter)*(3.281));
void footToMeter(int inputfeet) {
double outputMeter = ((inputfeet) / (3.281));
cout << outputMeter;
}
void meterToFoot(int inputmeter) {
double outputFoot = ((inputmeter)*(3.281));
cout << outputFoot;
}
void CtoF(int inputC) {
double outputF = 32 + (inputC*(9.0 / 5.0));
cout << outputF;
}
void FtoC(int inputF) {
double outputC = (5.0 / 9)*(inputF - 32);
cout << outputC;
}
void cMtocF(int inputcM) {
double outputcF = ((inputcM)*(35.315));
cout << outputcF;
}
void cFtocM(int inputcF) {
double outputcM = ((inputcF) / (35.315));
cout << outputcM;
}
void footToMeter(int-inputfeets){
双输出表=((输入英尺)/(3.281));
cout一种方法是为每个函数添加一个额外的参数,以确定要转换的方向
例如:
void lengthConversion(int inputLength, bool toFeet)
{
double output;
if (toFeet)
output = inputLength * 3.281;
else
output = inputLength / 3.281
cout << output;
}
void length转换(int-inputLength,bool-toFeet)
{
双输出;
如果(toFeet)
输出=输入长度*3.281;
其他的
输出=输入长度/3.281
cout将其简化为3个简单的函数。首先尝试将当前函数之间的相似性捆绑起来:
// Put the foot to meter and meter to foot functions into one, with 2 extra boolean values.
void fAndMConversion(int measurement , bool footToMeter , bool meterToFoot) {
if(footToMeter){
double fTm = ((measurement) / (3.281));
cout << fTm;
}
if(meterToFoot){
double mTf = ((measurement)*(3.281));
cout << mTf;
}
}
//将foot-to-meter和meter-to-foot函数合并为一个函数,并附加2个布尔值。
void fandm转换(整数测量、布尔英尺计、布尔英尺计){
if(英尺计){
双fTm=((测量)/(3.281));
通过生成一个泛型转换函数,然后是一个枚举参数,指定它是英尺到米还是相反。@FOR看起来怎么样?(我不确定枚举参数是什么意思…对不起)枚举基本上是您可以定义的一种类型,它可以接受某些值。颜色枚举的外观如下:enumcolor{red,yellow,green,blue}
。然后,您可以定义一个类型为color
的变量,它可以是红色
、黄色
、绿色
、或蓝色
。