无需发送任何内容即可返回函数

时间:2016-11-28 11:16:23

标签: c++

我有一个函数头:

$fieldOptions = [
    'options' => ['class' => 'form-group has-feedback'],
    'inputTemplate' => "{input}<span class='glyphicon glyphicon-lock form-control-feedback'></span>",
];

<?= $form->field($model, 'password', $fieldOptions)->label(false)->passwordInput(['placeholder' => $model->getAttributeLabel('password')]) ?>

然后,在我的主要内容中,我这样做:

double countThis(double counter);

然后是功能:

double test = 10;
countThis(test);

在底部,我有一个最后一个函数,在这里我想得到double countThis(double counter) { double counted = counter; return counted; } 而不必double counted,我只想从上一次调用返回到main得到值10(计算)。

4 个答案:

答案 0 :(得分:3)

实现这种持久性的一种方法是使用类并定义该类的实例

在使用时:

struct Counter
{
    double counted;
    double countThis(double counter)
    {
        return counted = counter; // assign counter to counted, and return that value.
    }
};

实例 int main() { Counter c; c.countThis(10); // c.counted contains the last value sent to countThis, in this case, 10 } 用于持久您传递给c的值。

答案 1 :(得分:1)

这样做:

double test = 10;
double ret;
ret = countThis(test);
// Now the value returned by countThis is in ret

答案 2 :(得分:0)

您可以使用全局变量。(双重计算)和函数

double countThis(double counter) {
   counted = counter;
    return counted;
}

定义另一个函数来返回计数

double count() {
    return counted;
}

但是,我建议你创建一个结构并在其上创建getter和setter。

答案 3 :(得分:0)

为什么不将值复制到double的新实例?

示例:

double test = 10;
countThis(test);

double something = test;