昨天学习了函数封装与调用,并探究了函数调用的参数传递方式:传值、传址、传引用。
今天又学到了另一个重要的关于自定义函数的知识:函数重载
为什么会有重载这个东西呢?
看下面这个例子:我们希望计算一个图形的面积,但是又不想每次调用时还要知道应该调用那个函数(因为,如果没有重载,我们可能会这样给这些函数起名字:areaOfTriangle、areaOfRectangle、areaOfCircle....)这样会使得调用这些函数的人感到很厌烦。
函数重载的意义就在于:函数可以重名,他们可以实现相近的功能(一般重载都是为了这个目的),使得调用者可以容易的使用。当然,他们也可以实现完全不相干的功能,比如项目工程大了,难免就会有不同的子模块负责人心有灵犀的给自己的函数起了一模一样的名字。(这种情况我们应当尽力避免,这显得不专业,也不利于代码的阅读和维护)。
看下面的代码:实现了自定义函数area的重载,可以实现计算三角形和矩形的面积,当然如果需要还可以实现圆形以及任何可以计算的图形的面积。
/*************************************************
Filename:
Copyright:
Author:bool_Gao
Date:2020/09/01
Description:计算三角形和矩形的面积
**************************************************/
#include <iostream>
#inclu