我宣布了一对矢量:
vector <pair <int, int> > args;
Run Code Online (Sandbox Code Playgroud)
然后我想像这样将一对推入向量:
args.push_back((1,-1));
Run Code Online (Sandbox Code Playgroud)
它告诉我逗号的左手操作数没有效果.我哪里出错了?
说args.push_back(std::make_pair(1,-1));.或任何数量的替代品:
// #1
args.push_back(std::pair<int, int>(1,-1));
// #2
typedef std::vector< std::pair<int, int> > pvector;
pvector args;
args.push_back(pvector::value_type(1,-1));
// #3
typedef std::pair<int, int> intpair;
std::vector<intpair> args;
args.push_back(intpair(1,-1));
// #4
args.emplace_back(1, -1); // sexy
//...
Run Code Online (Sandbox Code Playgroud)