0

メモリを節約するために、ベクターに boost::multi_index のアイテムを割り当て、ポインター (8 バイト) の代わりにこのベクター内のインデックス (4 バイト) を使用することは可能ですか (boost::multi_index の内部構造を含む)?

4

1 に答える 1

1

可能かもしれません: Boost.MultiIndex は、ここでAllocator::pointer説明されているように、ランダム アクセス イテレータをモデル化する場合、関連付けられた型が通常のポインタとは異なる特別なアロケータをサポートします(これは主に Boost.Interprocess アロケータをサポートするために行われます)。ベクトルをアリーナとして使用し、4 バイト オブジェクトを使用してインデックスを付けるアロケータを作成する場合があります。しかし、簡単な作業のようには見えません。

于 2012-12-21T08:06:40.480 に答える