Lambda 表达式(匿名函数)
·
Lambda 表达式(匿名函数)
CircleResult p1 = [&](){
vector<cv::Point2f> edges = Caliper::RadialWithGrayDiff2(bf, startPoint, rRange1, 0, 360, 10,
RadialCaliperDirection::Outward, Transition::Positive, 10, 1);
auto [center, r] = Geometry::FitCircleLeastSquaresManual(edges);
return CircleResult{cv::Point2f((float)center.x, (float)center.y), r};
}();
- [&]:捕获列表,表示 “以引用方式捕获外部所有变量”(如bf、startPoint、rRange1等),让
- Lambda 内部可以直接使用这些变量。
- ():参数列表,这里无参数,所以为空。
- { … }:函数体,包含具体的圆检测和拟合逻辑。
- 最后的():表示立即调用这个 Lambda 函数,执行后返回CircleResult对象,并赋值给p1。
更多推荐
所有评论(0)