有人可以帮我弄清楚为什么“Paycheck combineChecks”功能没有做任何事情吗?它只是跳过它。当我运行它时,它会在打印出来后结束,并且不执行任何组合检查功能。我很感激。
问问题
106 次
3 回答
4
Paycheck combineChecks(Paycheck p1, Paycheck p2);
...不是对函数的调用,而是前向声明。
它基本上只是意味着“编译器,假设某处有使用此签名定义的函数,您可以稍后使用”。
编辑:要实际调用该函数,首先需要将两个薪水结合起来,您可以传入,让我们称它们为paycheck1
and paycheck2
,然后就可以了;
Paycheck combined = combineChecks(paycheck1, paycheck2);
于 2013-03-06T20:49:11.130 回答
3
int main() {
// ...
Paycheck combineChecks(Paycheck p1, Paycheck p2);
那里的最后一行代码声明了一个调用的函数,该函数combineChecks
接受两个类型的参数Paycheck
并按值返回另一个Paycheck
对象。这不是函数的调用。
于 2013-03-06T20:50:22.873 回答
2
这不是调用:
combineChecks(Paycheck p1, Paycheck p2);
但是是函数的重新声明(它已经在上面声明了main()
)。我不确定建议更改为什么,因为程序中只有一个Paycheck
名为pay
的实例,而该函数需要两个。它还返回一个Paycheck
需要使用的实例。
于 2013-03-06T20:48:51.460 回答