类型为bool的函数接收参数(引用),并可能在C ++中返回它?

时间:2018-10-26 05:33:56

标签: c++ function reference

我在大学里有一项家庭作业,我应该做一个bool(double &var)类型的函数,该函数将对该变量的引用作为参数。然后,该函数执行一些计算,并应在一个新的单独变量中计算结果,但同时应将其返回到var变量(该函数的参数)中。我想问如何做到这一点?下面是一个简单的问题示例:

#include <iostream>
using namespace std;
double rez;
bool func(double &var){
//var = 5;
if(var>3){
    rez = var;
    return var;
}
else{
    return false;
}
}
int main(){

}

1 个答案:

答案 0 :(得分:0)

传递值时。像bool func(double var)一样,发生的事情是您获得了本地var,如果您离开范围,它将消失。想象这样的事情: 功能

bool func(double var) {
     double res = var * 2;
     return true;
}

这样称呼:

double someVar = 5;
bool success = func(someVar);

您可以使用var计算所有所需的内容,当从func返回时,本地副本var将消失,而您剩下的是someVar == 5

现在,当您通过每个引用(即bool func(double &var))传递时,您对传递的var所做的一切都将处理到原始引用。这意味着从func返回时,您将剩下someVar == 10success无论哪种方式都是正确的。

希望这会有所帮助