STL コンテナか Qt コンテナか? 質問する

STL コンテナか Qt コンテナか? 質問する

STL コンテナではなくQt コンテナ ( QMap、など)を使用することの長所と短所は何ですか?QVector

Qt を好む理由が 1 つあります。

  • Qt コンテナーは、Qt の他の部分に渡すことができます。たとえば、コンテナーを使用して、 を入力しQVariant、次に を入力することができますQSettings(ただし、いくつかの制限があり、キーが文字列である および / のみQListQMap受け入れQHashられます)。

他にありますか?

編集: アプリケーションがすでに Qt に依存していると仮定します。

ベストアンサー1

これは答えるのが難しい質問です。結局のところ、哲学的/主観的な議論に行き着くかもしれません。

そうは言っても...

私はルールを推奨します「郷に入っては郷に従え」

つまり、Qt の世界にいるなら、Qt のユーザーと同じようにコードを書くということです。これは、読みやすさや一貫性の問題だけではありません。すべてを stl コンテナに保存し、そのすべてのデータを Qt 関数に渡す必要がある場合、どうなるか考えてみてください。Qt コンテナにデータをコピーしたり、Qt コンテナからデータをコピーしたりする大量のコードを本当に管理したいですか。コードはすでに Qt に大きく依存しているので、stl コンテナを使用しても、それが「標準」になるわけではありません。また、コンテナを何か役に立つ用途に使用したいときに、対応する Qt コンテナにコピーしなければならないとしたら、コンテナの意味は何でしょうか。

おすすめ記事