G
グラフであるオブジェクトがあります。頂点の隣接関係のリストである (STL リスト) をG[i]
返すように、ブラケット演算子をオーバーロードしました。list<int>
i
私はこれら 2 つのコード セグメントを持っていますが、どちらも を反復処理することになっていますがG[i]
、最初の 1 つだけが機能します。
list<int> adj = G[2];
for(list<int>::iterator it = adj.begin(); it != adj.end(); it++) {
cout << *it << " ";
}
これは動作しません...
for(list<int>::iterator it = G[2].begin(); it != G[2].end(); it++) {
cout << *it << " ";
}
私が見る限り、彼らは同じことをしています。2 番目のコード セグメントが機能しない理由を説明できる人はいますか? また、私のリストを反復処理するより良い方法はありますか?