c++错误:term的计算结果不是一个带1个参数的函数
c++ error: term does not evaluate to a function taking 1 arguments
我在代码中的以下行收到错误"term not evaluate to a function taking 1 arguments":
steerToSpiralRefPoint(m_CentrePos);
但我不确定为什么…是因为函数只接受1个参数作为参数,但由于"m_centrePos"变量包含1个以上的属性,因此函数有效地接收了多个参数吗?
我用以下行定义了"steelToSpiralRefPoint":
CDirectOverflyItem steerToSpiralRefPoint = new CDirectOverflyItem::SteerStep(const CHeloData aHeloData);
"m_CentrePos"在该文件的开头被分配了值"cCenterPos"("CentrePos"是一个类型为"CCordinate"的变量,它有许多属性-纬度、经度、海拔高度等)。
CDirectOverflyItem也有很多属性——地面速度、风速、风向角等。
有人能告诉我为什么会出现这个错误,以及我应该如何纠正吗?
此表达式
steerToSpiralRefPoint(m_CentrePos);
是函数调用的后缀表达式。然而,从你的后转向来看,ToSpiralRefPoint不是一个函数(或函数指针),而是一个指向对象的指针。如果你想给指针赋值,那么你必须写
steerToSpiralRefPoint = m_CentrePos;
或者,如果有这种类型的运算符函数,那么代码应该看起来像
( *steerToSpiralRefPoint )( m_CentrePos );
这个建筑
CDirectOverflyItem steerToSpiralRefPoint = new CDirectOverflyItem::SteerStep(const CHeloData );
也是无效的。在表达式中,不能在变量之前使用限定符。它们只能在声明中使用。
问题似乎是我试图将错误的数据类型传递到参数中——它需要一个"CHeloData",但我试图给它一个"CCordinate"。
相关文章:
- 构造函数在退出函数时无法初始化一个参数
- 运算符重载:"operator+"必须采用零个或一个参数
- 如果需要转换,我可以在读取参数的同时将其移动到另一个参数吗?
- 两个函数模板候选项.将一个参数作为引用后,选择不太专业的模板
- 如何设置默认参数以防用户不输入另一个参数
- 使用一个参数的模板函数时出错(适用于 2)
- 仅当一个参数中未使用 std::function 时,模板函数替换才有效
- 如何在两个树通用的函数中创建一个参数?
- 使用带有一个参数函数的递归找到数字的平方
- 专门处理一个参数(C++模板)的两个模板参数
- 模板函数,其中一个参数需要专门化,而另一个不需要
- 如何更改参数包中的最后一个参数
- C++ 如何使用一个参数从派生类构造函数中调用具有两个参数的超类构造函数
- 模板参数重载,最后一个参数为非类型名
- 根据一个参数对数组进行排序
- 是否可以将指针传递给运算符,作为一个参数,例如指向函数的指针
- 用一个参数计数圆形链接列表中的节点
- 将数组作为一个参数从一个函数传递到C 中的另一个函数
- 将另一个参数传递给函子的库
- 分叉:使用一个参数运行 shell 时资源暂时不可用