Learning C++ 之1.4b 函数为什么是有用的以及怎么有效地使用函数

之前我们已经介绍了函数的基本概念和功能,下面看一下为什么函数是非常重要的。

为什么用函数:

一些程序员会问“我们放在函数的代码直接放到main函数不就可以了么”。在大多数情况下,尤其是代码量非常小的情况下是可以的。但是当代码量巨大的时候,你就能发现函数使用的好处了。

  • 有组织性:因为现在的代码程序都非常复杂,把所有代码都写在main函数里面显得比较混而且不利于维护。一个函数就相当于一个小程序,这样可以不依赖其他函数单独开发。将一个大的程序拆解成一些小的函数,也方便与程序的开发和后期维护。
  • 可重用性:一旦写完一个函数,可以在程序中调用多次。这就减少了重复的代码量,同时较少了粘贴复制的错误。同时函数也可以被其他程序调用,避免了从头再写。
  • 可测试性:因为函数减少了代码冗余,所以写的测试代码量会更少。同时因为函数是独立存在运行的,所以我们一旦验证一个函数可以正常工作,之后除非更改函数,就不需要验证了。这就减少了我们大量的验证时间和代码量。
  • 可扩展性:当我们的新程序需要额外的功能的时候,我们就可以单独写一个函数来实现功能。这也难怪每次调用这个函数就实现了新功能。
  • 抽象性:当你使用函数的时候,你只需要知道函数的输入,输出,功能就可以了。没有必要关注具体的实现,这就很好的方便使用者。

有效地使用函数:

对程序员来说一个巨大的挑战就是如何有效地使用函数,下面是几条有效的建议:

  • 当程序有重复使用的时候,可以抽象成函数。
  • 当程序的输入和输出是一族离散的数值的话,可以考虑使用函数,尤其是函数比较复杂时。
  • 一个函数应该只执行一个任务。
  • 当一个函数非常长,复杂,难以理解的时候,建议将其拆分成多个小的函数,我们称作重构。

典型来说,在学习c++的过程中你将会写一些程序,包含以下三个任务:

  • 读取使用者的参数
  • 使用读取的参数来计算结果
  • 输出计算的最终结果

对于比较简单的程序来说,我们可以都写在main函数里。但是对于复杂的程序来说,我们会建议通过多个函数的形式来实现。

程序员新手经常把计算结果和输出结果写在一个函数里,严格来说这违反了一个函数只能有一个功能的准则。一个计算结果的函数应该返回一个值给调用者,由调用者决定是否打印值。

这个我们将会在以后的课程中详细介绍。1.10a

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章