需要自定义构造函数,格式如下,并将结构体类型名添加到unordered_map的声明处。
//unordered_map中没有pair作为key的构造函数,所以自己写一个
struct pair_hash{
int operator()(const pair<string,string>&p)const{
return hash <string> () (p.first + p.second);
}
};
unordered_map<pair<string,string>,vector<int>,pair_hash> passPathPassengers;
之后如果key值为vector,list等,一旦报错,就要先思考,是否有这样的构造函数。