複数のブーストaccumulataor_setをstlマップに保存したいと思います。
私が読んだすべての例はaccumulator_set
、ローカル変数として使用しています。
accumulator_set<int, stats<tag::rolling_mean> > acc(tag::rolling_window::window_size = 5);
acc(1);
acc(2);
acc(3);
cout << rolling_mean(acc);
accumulator_set
でも地図に保存したいです。私はこのようなコードを書こうとしましたが、行き詰まりました:
map<int, accumulator_set<long, stats<tag::rolling_mean> > > avg;
void update(int id, long data){
if(avg.count(id)==0){
//key doesn't exist in map
avg[id]= ;// How to create acc as in above example and store it in map?
}
accumulator_set<long, stats<tag::rolling_mean> > &acc = avg[id];
acc(data);
}
void read(int id){
cout << rolling_mean(avg[id]) ;
}
accumulator_set
上記の例のようにを作成し、それ(参照またはオブジェクト)をマップに保存するにはどうすればよいですか?