这种操作安全么??
deque<int> b;deque<int> a;
for(int i=0; i<20; ++i) {
a.push_back(i);
}
b.assign(a.begin(), a.begin()+10);
//第一种情况
a.resize(5);
cout << a[9] << endl;
//第二种情况
swap(a,b);
cout << b[8] << endl;
这种在电脑上貌似能正常编译运行, 我现在郁闷的是元素个数已经被截短了,这样操作是否是安全的?
还有就是这种操作是否会在元素个数被截短的时候,内存是否会被释放掉?(如果是的话那上面的操作就一定不安全了^_^)
希望大家能帮忙解决下哈, 有资料分享下就更好了