我正在使用 C++ 中的向量,我想出了以下我不太了解的 MWE:
#include <iostream>
#include <vector>
using namespace std;
vector<double> pb()
{
vector<double> a;
a.push_back(1);
a.push_back(2);
a.push_back(3);
return a;
}
int main()
{
vector<double> asd;
asd = pb();
cout << asd.size() << endl;
asd = pb();
cout << asd.size() << endl; //WHY DOES THIS GIVE 3, AND NOT 6? asd HAS NOT BEEN EMPTIED AT ANY POINT
return 0;
}
我不明白为什么我的向量asd
每次调用时都会“初始化” pb()
。我所期望的是,调用pb()
只会附加到asd
.