C++里map嵌套vector时报错
map<Good,vector<int>>AuctionMap;//这里>>中间有空格,没问题Good*g=newGood(1,2,3);//这里没问题vector<in...
map<Good,vector<int> > AuctionMap; //这里>>中间有空格,没问题
Good *g = new Good(1,2,3); //这里没问题
vector<int> v;
v.push_back(1);
AuctionMap[*g] = v; //这里报错。这里用insert,make_pair插入都报同样的错误,貌似是运算符怎么冲突了
错误是
error C2784: 'bool __cdecl std::operator <(const class std::vector<_Ty,_A> &,const class std::vector<_Ty,_A> &)' : could not deduce template argument for 'const class std::vector<_Ty,_A> &' from 'const class Good‘ 展开
Good *g = new Good(1,2,3); //这里没问题
vector<int> v;
v.push_back(1);
AuctionMap[*g] = v; //这里报错。这里用insert,make_pair插入都报同样的错误,貌似是运算符怎么冲突了
错误是
error C2784: 'bool __cdecl std::operator <(const class std::vector<_Ty,_A> &,const class std::vector<_Ty,_A> &)' : could not deduce template argument for 'const class std::vector<_Ty,_A> &' from 'const class Good‘ 展开
3个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询