私は持っていmap<int, map<int, int>>
ます。
最初のキーはノードを表し、2 番目のキーは属性を表し、「最も深い」要素は特定の値を表します。
その要素を確認する必要がありますが、次の不要な操作を行うと、マップにキーが追加されます。
map<int, map<int, int>> test;
if (test[4][3] > 5)
{
//do something
}
私が考える代替案は
map<int, map<int, int>> test;
if (test.find(4) != test.end())
{
if (test[4].find(3) != test[4].end())
{
if (test[4][3] > 5)
{
//do something
}
}
}
これを行うより良い方法はありますか?マップにキーが存在するかどうかはわかりませんが[4][3]
、不必要に追加したくありません。ありがとう!