vector += 1, 2, 4, 5;
听说 boost 库现在可以这样了:
vector<int> v;
v += 1, 2, 4, 5;
所以想自己实现一下:
#include <iostream>
#include <vector>
#include <cstdlib>
using namespace std;
template <typename T>
vector<T> &operator += (vector<T> &v, T t)
{
v.push_back (t);
return v;
}
template <typename T>
vector<T> &operator , (vector<T> &v, T t)
{
v.push_back (t);
return v;
}
int main()
{
vector<int> v;
v += 1, 2, 3, 4;
for (vector<int>::iterator i = v.begin(); i != v.end(); ++i)
cout << *i << endl;
system ("pause");
return 0;
}