容器大小计算问题
请看这段代码
- C/C++ code
int main(void){ list<string> lst; vector<string> vec; lst.push_back("ABC"); lst.push_back("DEF"); lst.push_back("A"); vec.push_back("ABC"); vec.push_back("DEF"); list<string>::iterator lp = lst.begin(); vector<string>::iterator vp = vec.begin(); cout<<lp->size()<<vp->size()<<endl<<lst.size()<<vec.size()<<flush;// cout<<issame(lst,vec);}
为什么用指针得到的容器大小和直接得到的大小不同呢?
[解决办法]
lst.size()调用的是list的size()
vec.size()调用的是vector的size()
lp->size()和vp->size()调用的是他们的元素string的size()