关于C++ stl的size()方法的坑

切忌把该方法用于运算中,最好拿一个数来存你要的容器的大小,因为该方法返回的是一个size_type类型的无符号整型! 当你使用该方法参与运算时,譬如有一个vector num, num.size()-1,当vector的大小为0时,得到的运算结果不是-1,而是一个非常大的数,因为alu没有减法,运算时它会把-1当成无符号整型处理,而-1补码被当成无符号整型后与0相加会变成一个超级大的数,导致运算出错!

在这里,数组大小为4,4-8结果变成了一个非常大的数,所以要记住这个坑。