-2

これを言うと、後で奇妙なコンパイラ (gcc4.9、ブースト 1_58) エラーが発生します。

この IL にアクセスするとき:

for(auto & odp : odpList[i]) //<-error here
{

/usr/local/include/boost/intrusive/pack_options.hpp|33|error: no class template named ‘pack’ in ‘class boost::fast_pool_allocator<OneDepthPrice>’

typedef std::tuple<int, int> OneDepthPrice
typedef boost::intrusive::list<OneDepthPrice,  boost::fast_pool_allocator<OneDepthPrice>, constant_time_size<false>> BaseList;

これを行う正しい方法は何ですか?

4

1 に答える 1

1

これは、アロケータが渡すことができる「オプション」ではないためです。

ただし、アロケーターを侵入型コンテナーに渡そうとしても意味がありません。コンテナーの外部で割り当てを管理するのはあなただからです。

于 2015-05-04T20:01:39.783 に答える