0

C または C++ で Dictionary (VB6) に相当するものをマウントする方法の情報または例はありますか?
この実装は、DLL VB6 と呼ばれるパラメーターとして渡されるために使用されます。

私の意図は、C (VARIANT/ARRAY を使用する win32 など) で辞書を作成し、それを渡して VB を呼び出すことです。したがって、このデータ構造を作成する方法を学ばなければなりません。

タンク。

4

5 に答える 5

9

地図はどうですか?

于 2009-01-13T16:08:19.337 に答える
6

C++ の次のバージョンには、ハッシュベースのコンテナーが含まれる予定unordered_map<>です (明らかに、それを呼び出すとhash_map、あまりにも多くの独立した実装と競合すると考えられていたようです)。

Boostに追加され、TR1にある可能性が高いです。いつものように、開発システムが新しい標準機能をサポートしていない場合は、Boost をお勧めします。

于 2009-01-13T16:21:23.147 に答える
5

ディクショナリはハッシュ ベースであり、マップはツリー ベースのコンテナです。tr1 は何らかのハッシュ コンテナを追加したと思いますが、多くのプラットフォームではhash_mapを使用できます

于 2009-01-13T16:17:11.673 に答える
3

マップのヘッダー以外std::mapにあるということですか?

于 2009-01-13T16:08:20.787 に答える
2

ハッシュテーブル?たとえば、C でいくつかの既存のハッシュ テーブル パッケージを見つけることができます。

永続的なストレージ用に作成されたパッケージを使用することもできます。高速化のためにすべてをメモリに保持するオプションがあるためです。

  • HamsterDB「メモリ内データベース」、オプション HAM_IN_MEMORY_DB
  • BerkeleyDBは、バッファリングをオフにするか、ファイルを指定しないことによって可能性があります (「ファイル パラメータを NULL に設定することにより、ディスク上に保持されることを意図していないインメモリ データベースが作成される可能性があります。」)
于 2009-01-13T20:16:33.000 に答える