📄 vectorcoredump.cpp
字号:
//: C07:VectorCoreDump.cpp
// From "Thinking in C++, 2nd Edition, Volume 2"
// by Bruce Eckel & Chuck Allison, (c) 2001 MindView, Inc.
// Available at www.BruceEckel.com.
// How to break a program using a vector
//{-msc}
//{-bor}
//{-g++3}
#include <vector>
#include <iostream>
using namespace std;
int main() {
vector<int> vi(10, 0);
ostream_iterator<int> out(cout, " ");
copy(vi.begin(), vi.end(), out);
vector<int>::iterator i = vi.begin();
cout << "\n i: " << long(i) << endl;
*i = 47;
copy(vi.begin(), vi.end(), out);
// Force it to move memory (could also just add
// enough objects):
vi.resize(vi.capacity() + 1);
// Now i points to wrong memory:
cout << "\n i: " << long(i) << endl;
cout << "vi.begin(): " << long(vi.begin());
*i = 48; // Access violation
} ///:~
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -