Clang(版本 17.0.6)抱怨:
warning: variable 'i' used in loop condition not modified in loop body [-Wfor-loop-analysis]
在此代码上:
int i = 0;
auto add = [&]
{
cout << i;
i++;
};
for (; i != 3; )
add();
因为clang无法意识到
i
实际上已经改变了。
如果你想知道,我之所以不在for循环语句中修改i++,是因为这个
add
函数稍后会被重用。
我应该禁用此警告吗?