August 2021
Intermediate to advanced
450 pages
9h 36m
Chinese
在上面的程序中,square(i)是什么呢?它是一个函数调用。准确地说,它使用参数i调用square函数。函数(function)是一个具名的语句序列,能够返回计算结果(称为返回值)。C++的标准库提供了许多有用的函数,例如在3.4节中用到的求平方根函数sqrt(),但我们在程序中还需要写很多函数。square函数的一种可行定义如下:
第一行说明这是一个名为square的函数(由括号可知),它有一个int型参数(名为x),返回值也是int型(函数定义中的第一个关键字)。这个函数的使用如下:
对于函数的返回结果,我们可以使用也可以不使用。但是,我们必须严格按照函数的定义给它传递参数,例如:
很多编译器都会警告未使用的函数返回值,并给出上面示例中的错误信息。你可能会认为计算机很“聪明”,它应该能够理解“two”表示整数2。但实际上,C++编译器并不像你想象的那样。编译器的工作是检查你的代码是否符合C++语言规范,并严格按照你的程序要求去执行。如果让编译器去猜测你的真实意图的话,那么它很可能会猜错,从而导致你或者你的程序用户陷入麻烦。你将会发现如果有编译器的猜测等“帮助”,那么很难预测程序的运行结果。 ...