有没有更简单/更短的方式用C ++编写此代码?

时间:2018-11-03 07:26:10

标签: c++ function return juce

我对C ++还是很陌生,并且在JUCE从事一些音频合成器项目的学习。我正在尝试学习不同的写作方式。

有没有更简单的方法来编写下面的代码,例如作为一个函数,返回两个输出然后一次相乘?

    double noiseEnvOutput()
    {
        return envImpulse.nextSample();
    }

    double noiseOscOutput()
    {
        return noiseOsc.noise();
    }

    double noiseImpulse()
    {
        return noiseOscOutput()*noiseEnvOutput();
    }

1 个答案:

答案 0 :(得分:0)

我想您正在寻找类似的东西:

double noiseImpulse()
{
    return noiseOsc.noise() * envImpulse.nextSample();
}

如果您仅在noiseOscOutput()中使用noiseImpulse()noiseImpulse(),那么您绝对应该这样缩短-您甚至可以跳过两个函数调用来提高程序性能两者的维护成本都很小,可以安全地这样做,而不会损失太多逻辑或可读性。