使用重复 push_back() 初始化向量的问题
所以在我的程序中,我有一个只包含双精度和双精度数组的结构:
struct Particle {
double x[2];
double v[2];
double pressure;
.......
};
当我像这样初始化我的一个向量时:
std::vector<Particle> p_vec(2500);
一切正常,但是当我将该行替换为:
std::vector<Particle> p_vec;
Particle p;
for (int i = 0; i < 2500; i++) p_vec.push_back(p);
我的程序仍然通过了 for 循环,但后来崩溃了。
这两种方法之间有什么区别吗?