C++ 初始化boost::使用boost::circular\u buffer的多\u数组<;双倍>;

C++ 初始化boost::使用boost::circular\u buffer的多\u数组<;双倍>;,c++,boost,circular-buffer,C++,Boost,Circular Buffer,我想创建一个boost::multi_array的boost::circular_buffer,但我不知道如何启动它。它应该是12个大小为50的boost::circular_buffer数组 我试过: boost::multi_array< boost::circular_buffer<double> , 2 > b( boost::extents[12][boost::circular_buffer<double> (50)] ); boost::多数

我想创建一个
boost::multi_array
boost::circular_buffer
,但我不知道如何启动它。它应该是12个大小为
50
boost::circular_buffer
数组

我试过:

boost::multi_array< boost::circular_buffer<double> , 2 > 
b( boost::extents[12][boost::circular_buffer<double> (50)] );
boost::多数组
b(boost::extensts[12][boost::circular_buffer(50)]);
我得到了一个编译错误


有人能告诉我如何正确启动
b
吗?

在你的情况下,你不需要多个数组,std::vector更合适。多维数组意味着它有更多的维度,在你的例子中,你有一个大小为12的维度。@Shuo,假设我将使用
std::vector
,然后我需要
将(boost::circular\u buffer)
推回我的向量容器。如何定义循环缓冲区的大小为50?
std::vector
不只有一个构造函数;)。尝试
std::vectorb(12,boost::circular_buffer(50))