在c++中迭代一个向量的正确方法是什么?
考虑这两个代码片段,这一个工作得很好:
for (unsigned i=0; i < polygon.size(); i++) {
sum += polygon[i];
}
还有这个:
for (int i=0; i < polygon.size(); i++) {
sum += polygon[i];
}
它生成warning: comparison between signed and unsigned integer expressions
。
我是c++世界的新手,所以unsigned
变量对我来说看起来有点可怕,我知道如果不正确使用unsigned
变量可能是危险的,所以-这是正确的吗?