关于标准模板库容器size()函数的性能

在最新的C++标准中规定,所有的C++标准模板容器的size()函数的复杂度都应该是常数时间O(1)的,但是实际上很多编译器带的标准模板库的size()函数的复杂度是O(n)的,比如gcc的最近的版本才改成了O(1),微软的msvc好像新版本已经全部是O(1)的了,所以我们要注意下面的语句在容器内元素很多的时候可能会是性能杀手。

for  ( xxx ; container.size()>xxx; xxx)