如何解决我不能使用 int 作为键并将其绑定到 C++ 中的映射对反之亦然..为什么?
这是我的代码片段...
'''
#include<bits/stdc++.h>
using namespace std;
int main()
{
map<pair<int,int>,int> m;
m[{1,2}]=1;
cout<<m[{1,2}];
// map<pair<int,pair<int,int> > k;
// k[{2,3}]=make_pair(1,2);
// cout<<k[{2,3}];
map<int,int> > s;
s[12]={1,23};
cout<<s[12]<<endl;
}
'''
现在,当我尝试将 pair 绑定到 int 时,它工作正常..
但是当我反转它并尝试将 int 与 pair
13 11 D:\dec\cf\Untitled2.cpp [错误] 无法将 'std::ostream {aka std::basic_ostream}' 左值绑定到 'std::basic_ostream&&'
39 0 D:\dev c++\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\istream 从 D:/dev c++/Dev-Cpp/ 包含的文件中MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/istream
38 D:\dev c++\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\sstream from D:/dev c++/Dev-Cpp/MinGW64/lib/ gcc/x86_64-w64-mingw32/4.9.2/include/c++/sstream
45 D:\dev c++\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\complex from D:/dev c++/Dev-Cpp/MinGW64/lib/ gcc/x86_64-w64-mingw32/4.9.2/include/c++/complex
38 D:\dev c++\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\ccomplex from D:/dev c++/Dev-Cpp/MinGW64/lib/ gcc/x86_64-w64-mingw32/4.9.2/include/c++/ccomplex
52 D:\dev c++\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\x86_64-w64-mingw32\bits\stdc++.h 来自 D:/dev c++/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++/x86_64-w64-mingw32/bits/stdc++.h
现在谁能告诉我为什么会发生这种情况,以及我可以做些什么来处理我需要将 int 与一对 int 绑定(例如在有向图中)并和平遍历的情况。
我也试过 s[12].first/s[12]->first 但没用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。