生成所有可能数组的算法

时间:2014-11-15 09:12:20

标签: c++ algorithm

我一直在制作一个算法来生成所有可能的数组,这些数组具有给定的长度,只有数字最多包括3,但它确实有效,尽管它没有给出一个错误。代码如下:

template <typename t>
bool w (t begin, t end) {
while (begin != end) {
    end--;
    if (*end != 3) {
        *end++;
        return true;
    }
    else
        *end = 0;
}
return false;
}

有人得到了什么错吗?对不起我的英语不好,但这不是我的母语。

1 个答案:

答案 0 :(得分:0)

*end++;并不像*(end++)那样做你想做的事情,只有end++
使用更好的警告设置,您将拥有:

  

警告:未使用计算的值[-Wunused-value]
  *结束++;
  ^

使用++*end;(*end)++;

Live example