ここでは正確に何が起こっていますか?ヒープからの割り当て中にスタックオーバーフローが発生する
#include <boost/array.hpp>
#include <boost/assign/list_of.hpp>
struct Toy {
int m_data[100000];
};
struct Box {
Box()
: m_toys( boost::assign::list_of(Toy())(Toy())(Toy()) )
{}
boost::array<Toy,3> m_toys;
};
void main()
{
Box* box = new Box; // This causes stack overflow
}
+1は、boost :: assign :: list_ofに+1します。いい視点ね! –