在下面的代码中有 3 个对象 d1 和 d2 被创建用于执行 push_back()。一个在我创建时,一个在调用 v.push_back() 时,另一个在它实际复制到向量中时{我不确定}。
在 C++03 中不使用 std::vector 的情况下,避免这种情况的最佳选择是什么?
#include <iostream>
#include <vector>
#include <string>
using namespace std;
struct Details
{
string fname;
string lname;
string address;
int age;
};
int main(int argc, char **argv)
{
vector<Details> v;
Details d1;
d1.fname = "vivek";
d1.lname = "kumar";
d1.address = "New Delhi";
d1.age = 25;
v.push_back(d1);
Details d2;
d2.fname = "some name";
d2.lname = "some lastname";
d2.address = "some address";
d2.age = 25;
v.push_back(d2);
return 0;
}