私はコードベースで同様のperlコードを見て、これ(設定i=100
)がforループから抜け出すためのOKな方法であるかどうかを知りたいと思いましたか?これに落とし穴はありますか?
int a[100];
...
bool check_if_array_contains_29()
{
bool result = false;
for(int i=0; i<100; ++i)
{
if(a[i] == 29)
{
result = true;
i = 101;
}
}
return result;
}
これは私がすることのようなものです。
bool check_if_array_contains_29()
{
bool result = false;
for(int i=0; i<100 && !result; ++i)
{
if(a[i] == 29)
{
result = true;
}
}
return result;
}
編集-1:
私は機能を実現するためにperlでワンライナーを探していません。実際のコード(機能)ははるかに複雑でした。これは、私のポイント(forループの早期終了)を説明するために簡略化した単なる例です。