我有一个用例,我想运行代码,但是仅当我的一个变量具有有效值(该值来自传感器)时。要使其有效,它必须大于-1500,小于+1500,并且其值不能为-1、0或+1。现在我要做的是:

if ((a > -1500 && a < -1) || (a > 1 && a < 1500) {

但是,此标准在我的代码中反复出现,如果我可以在代码的某处定义有效值的范围是那么容易得多,所以我可以这样做:
if (valid) {

最好的方法是什么?

澄清一下:我不知道如何告诉系统哪些值有效

最佳答案



添加一个功能。

bool isInputValid(int a)
{
    return (a > -1500 && a < -1) || (a > 1 && a < 1500);
}

然后使用
if ( isInputValid(a) ) {  ... }

您需要在哪里运行该检查的地方。

进一步完善:
bool isInRange(int a, int low, int high)
{
    return (a > low && a < high);
}

bool isInputValid(int a)
{
    return (isInRange(a, -1500, -1) || isInRange(a, 1, 1500));
}

10-07 16:58