本文整理汇总了C++中Holder::insert方法的典型用法代码示例。如果您正苦于以下问题:C++ Holder::insert方法的具体用法?C++ Holder::insert怎么用?C++ Holder::insert使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Holder
的用法示例。
在下文中一共展示了Holder::insert方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: addExactPoints
void GeoSearch::addExactPoints(const GeoPoint& pt, Holder& points, int& before, int& after,
bool force){
before = 0;
after = 0;
if(pt.isExact()){
if(force) points.insert(pt);
return;
}
vector<BSONObj> locs;
// last argument is uniqueDocs
getPointsFor(pt.key(), pt.obj(), locs, true);
GeoPoint nearestPt(pt, -1, true);
for(vector<BSONObj>::iterator i = locs.begin(); i != locs.end(); i++){
Point loc(*i);
double d;
if(! exactDocCheck(loc, d)) continue;
if(nearestPt.distance() < 0 || d < nearestPt.distance()){
nearestPt._distance = d;
nearestPt._pt = *i;
continue;
}
}
if(nearestPt.distance() >= 0){
points.insert(nearestPt);
if(nearestPt < pt) before++;
else after++;
}
}