我有几个IF语句,我希望尽可能地对其进行压缩,以便数组中每次出现数字1时,它都会向Ones INT加1。
if (Dice[1] == 1)
{
Ones ++;
}
if (Dice[2] == 1)
{
Ones ++;
}
if (Dice[3] == 1)
{
Ones ++;
}
if (Dice[4] == 1)
{
Ones ++;
}
if (Dice[5] == 1)
{
Ones ++;
}
最佳答案
您正在按顺序计数1
值,并且有一个standard library algorithm。它需要两个迭代器,在这种情况下,我给它提供了指针。
Ones += std::count(&Dice[1], &Dice[6], 1);
这做同样的事情,有些人可能更喜欢这种形式。
Ones += std::count(Dice + 1, Dice + 6, 1);