map <int, map<int, string>> DP;
if( DP.find( ? ) != DP.end() )
{
// have found
}
如何填充((。这似乎是二维。我知道如何处理一个维度,例如:
map<int, string> DP;
if( DP.find(1) != DP.end() )
{
// have found
}
,但我不知道如何处理二维。
一次一个维度:
auto it1 = DP.find(1);
if (it1 != DP.end()) {
auto it2 = it1->find(2);
if (it2 != it1->end()) {
// found: it2->second
}
}
我认为 kerrek sb 's代码存在一个小问题。访问第二(内部(维度的方式应该是这样:
auto OuterIter = DP.find(1);
if (OuterIter != DP.end())
{
auto InnerMap = OuterIter->second;
auto InnerIter = InnerMap.find(0);
if (InnerIter != InnerMap.end())
{
// found the second(inner) dimension element
}
}
您可以考虑 chtz ````建议:您也可以直接考虑使用std :: map,std :: string>