Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/159.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将结构用作映射中的键,忽略==运算符,误报_C++_Struct_Stdmap - Fatal编程技术网

C++ 将结构用作映射中的键,忽略==运算符,误报

C++ 将结构用作映射中的键,忽略==运算符,误报,c++,struct,stdmap,C++,Struct,Stdmap,我试图使用结构作为映射中的键,但尽管定义了std::map还是使用了等价的概念。当 !(a < b) && !(b < a) !(a

我试图使用结构作为映射中的键,但尽管定义了
std::map
还是使用了等价的概念。当

!(a < b) && !(b < a)
!(a

换句话说,映射从不使用
=
查看两个元素是否相同。在地图中,如果两个元素具有相同的
文件路径
,则认为它们是等效的。如果您想在映射中的排序中也考虑
导入设置
,则需要在
操作符中进行比较
std::map
使用等效概念。当

!(a < b) && !(b < a)
!(a

换句话说,映射从不使用
=
查看两个元素是否相同。在地图中,如果两个元素具有相同的
文件路径
,则认为它们是等效的。如果您想在映射中的排序中也考虑
导入设置
,您需要在
操作符中比较这一点什么是“误报”?
std::map
从不调用
操作符==
,只有上面两个操作符的
操作符-我的代码底部有一个MRE。有评论解释了这一点,自从我发布后就一直在那里,没有编辑。投票结束这个问题的人——答案解决了我的问题,可以帮助其他人,它真的不应该因此而结束reason@WillHain它有助于在散文中进行解释,而不仅仅是在代码中。不是每个人都会通读代码来发现你解释了那里的行为。什么是“误报”?
std::map
从不调用
operator==
,只有
operator到上面两者-我的代码底部有一个MRE。有评论解释了这一点,自从我发布后就一直在那里,没有编辑。投票结束这个问题的人——答案解决了我的问题,可以帮助其他人,它真的不应该因此而结束reason@WillHain它有助于在散文中进行解释,而不仅仅是在代码中。不是每个人都会通读代码,发现你解释了那里的行为。谢谢你的回答谢谢你的回答