调用 naive _intersection

我想调用 naive_intersection():尝试这样调用:


无法成功

同学你调用的方式可以说没有一点对的地方……

首先,为什么不看看 开发者文档:naive_intersect 呢?这里已经给出了函数原型(声明),你需要按照形参列表的类型来传参、按照声明的返回值类型来接收。所以,

  • 你应该用 std::optional<Intersection> 类型的变量来接收返回值,至于什么是 std::optional 你应该自己去查资料,这是我们要求你自学的。
  • 三个实参应当依次是 Ray, GL::Mesh, Eigen::Matrix4f 类型,并且依次用逗号隔开。截图中传参时多套了一层括号已经违反 C++ 语法规则了,参数个数也不对。我猜你是想调用 m->model() 来获取某个物体的 Model 矩阵,但不管怎么说你这个用空格分割的写法都不可能得到你想要的东西。

就截图中的情况来看,你可能需要下工夫去重新复习 C++ 的基本语法,至少对类型、函数、指针和类有基本的了解之后再来写代码,否则还会遇到更多语法问题。