在《C++ Primer》的第341面看到了容器的写入操作,有一个初学者很容易犯得错误,故在此重申一遍: 在向容器做写入操作时,必须保证容器至少足以存储要写入的元素。 举例: int main() { vector<int> ivec(10); // 向没有元素的空容器中作写入操作是危险的 fill(ivec.begin(), ivec.begin() + ivec.size()/2, 0); fill(ivec.begin() + ivec.size()/2, ivec.end(), 10); for(vector<int>::iterator it = ivec.begin(); it != ivec.end(); it++) cout << *it << endl; return 0; }