我想要一個矢量中的元素partial_sum,其中每個元素是一對。 partial_sum應該遞增地添加double值(每對中的第一個)。帶矢量<pair <double,uint>>的STL partial_sum?如何實現binOp函子?
實施例:
vector<pair<double, unsigned int> > temp_vec;
temp_vec.push_back(make_pair(0.5, 0));
temp_vec.push_back(make_pair(0.2, 1));
temp_vec.push_back(make_pair(0.3, 2));
partial_sum(temp_vec.begin(), temp_vec.end(), temp_vec.begin(), ???); // in place
應該給我含有向量:[(0.5,0),(0.7,1),(1.0,2)]
如何實現必要的函子使用partial_sum函數?
我能夠在自定義函子的stl lower_bound搜索中使用我的對,但在上面的情況下,我不知道如何聲明二進制操作。
我不知道它是否有幫助,但使用boost庫是可能的。
優秀。使用operator()將代碼轉換爲函子後,它完美地工作。正是我想要達到的。只有一句話:你的代碼是一個「正常」功能。你爲什麼不發佈函子?有什麼理由嗎? (我是一種C++ noob,與周圍的人相比,也許我在混淆這些詞) – sascha 2010-11-06 16:02:55
@sascha:你說得對,這不是一個函數,我只是懶得打出來。將解決。 – 2010-11-06 16:03:56
非常感謝。 – sascha 2010-11-06 16:07:53