0

私のプログラムでは、いくつかの値を格納するために CArray を使用しました。ただし、CArray メンバ関数を使用するとパフォーマンスが低下します。CArray の反復など。iam は Copy、GetAt、Append などのメンバー関数を使用していました。パフォーマンスが低いため、iam は CArray の代わりに CMap クラスを使用することにしました。私の判断は正しいですか?誰か説明して?

4

1 に答える 1

2

これを見てください:コレクションクラスを選択するための推奨事項

パフォーマンスだけに基づいてコレクション クラスを選択する必要はありません。必要なデータ構造の種類、実行したい操作などによって異なります。

「いくつかの値を保存したい」と言ったので、これ以上複雑なことはないと思います。そのためには、またはのいずれかを使用できCArrayますCList。値を挿入するときはリストの方が高速ですが、インデックスは作成されません。つまり、特定のインデックスの要素にアクセスできないため、代わりにリストをトラバースする必要があります。

CMapはとの両方よりも高速ですが、各要素のインデックスに一意のキーを使用できる複雑なデータ構造のコレクションがある場合は、これを使用することをお勧めします。CArrayCList

于 2012-07-11T10:17:10.173 に答える