c++ - 如何将 C++ lambda 函数传递给另一个函数?
问题描述
auto xxx= [&radius](Vector3 pos)->float {
SDF sdf;
return sdf.Sphere(Vector3(pos.X, pos.Y, pos.Z), radius);
};
打电话
DensityPoint*** densityPoints2 = GetDensityData(dimensions, Vector3(), Vector3(), xxx);
上
DensityPoint*** Density::GetDensityData(Vector3 dimensions, Vector3 fractions, Vector3 offsets, float f(Vector3 pos))
{
它说...no suitable conversion function...
当我从 lambda 中删除引用(闭包)时,它不会给出错误。
解决方案
推荐阅读
- git - 如何镜像两个 Azure DevOps/VSTS 存储库之间的特定分支
- elasticsearch - ElasticSearch - 使用函数得分查询字段值因子与匹配查询
- c# - 检查模拟设置是否返回字符串类型
- bash - 运行日志日期格式更改不起作用
- sonarqube - 人群组不同步到声纳
- jquery - 如何在按键事件上提醒值?
- javascript - DataTables 不会加载 AJAX 和 MYSQL
- java - SIGINT 信号无法用循环终止 java 进程
- tfs - 将任务移动到进行中通道时,TFS 2018 scrumboard 挂起
- c - 将指令指针地址(在共享库中)转换为源指令