使用常量修复类成员函数引用参数的第三方库代码初始化

时间:2016-05-18 17:12:17

标签: c++ icc

编译第三方库时,我得到“错误:对非const的引用的初始值必须是左值”。在此成员函数声明中的C ++类定义中发生错误:

bool intersectsHierarchy(ON_Ray& ray, std::list<BVNode<ON_BoundingBox>*>& results = 0);

根据我在网上找到的信息,我试图将初始化参数设为const,如下所示:

bool intersectsHierarchy(ON_Ray& ray, const std::list<BVNode<ON_BoundingBox>*>& results = 0);

但这只会导致另一个编译错误。

如何最好地解决这个问题并让我的库进行编译?

1 个答案:

答案 0 :(得分:-1)

删除= 0部分 -

  1. 您不能将0指定给列表
  2. 您只能通过引用而不是const
  3. 传递变量