【发布时间】:2020-04-19 14:10:10
【问题描述】:
我正在为this 编写解决方案,需要创建一个set,实际上是一个从int 到我的自定义set 的unordered_map,不用多说,这就是我想出的:
auto comparator = [](pair<int, int> a, pair<int, int> b) {return a.second == b.second ? a.first < b.first : a.second < b.second; };
unordered_map<int, set < pair<int, int>,decltype(comparator) >> H;
其余代码不相关。编译器在这里抱怨
"Severity Code Description Project File Line Suppression State
<lambda_6dd753bdcbaf959c162af7914f0815bf>(void)': attempting to reference a deleted function"
任何人都可以描述一下编译器试图告诉我,或者如果你能暗示我做错了什么,那就更好了。提前致谢。
【问题讨论】:
-
显示的代码doesn't reproduce the problem。所以其余的代码太相关了。显示minimal reproducible example
-
哪个编译器?
-
除了minimal reproducible example,还请提供完整的编译器输出。错误消息附带详细说明出了什么问题的附加说明。还要提及您正在为哪个 C++ 标准版本进行编译。 C++20 对此用例进行了更改。