C++入门:缺省参数与函数重载详解

需积分: 10 1 下载量 136 浏览量 更新于2024-07-29 1 收藏 2.77MB PPT 举报
C++入门课件主要介绍了C++编程语言中的两个核心概念:具有缺省参数值的函数和函数重载。 **1. 缺省参数值的函数** 在C++中,函数的参数允许设置缺省值,这意味着当调用函数时,如果没有提供特定参数的值,将使用预先设定的默认值。例如,`fac()`函数接受一个整数`n`,默认值为2。在`main()`函数中,当我们调用`fac(6)`时,使用了提供的6作为参数,返回结果720,而调用`fac()`则使用默认值2,返回结果2。另一个例子是`area()`函数,它接受两个参数`long`和`width`,其中`width`有缺省值2。在`main()`中,`area(8, 6)`、`area(8)`和`area()`分别展示了不同情况下默认值的运用。 在使用具有缺省参数的函数时,需要注意以下几点: - 不可以将缺省参数放在函数调用的左侧。 - 函数原型说明时,如果提供缺省值,可以在不写变量名的情况下声明。 - 缺省值只能在函数原型说明时定义一次,且后续函数定义不可再使用缺省值。 - 函数重载不考虑返回类型,仅通过参数列表的差异来决定调用哪个版本。 **2. 函数重载** 函数重载是指在同一作用域内,可以使用同一个函数名定义多个具有不同参数列表的函数。这允许程序员根据传入的不同参数类型执行不同的操作。例如,`fun()`函数被重载为接受两个整数相加和一个整数平方两种情况。`main()`中的调用`fun(3, 5)`和`fun(5)`分别执行加法和乘方运算。 在实现函数重载时,必须注意以下规则: - 定义的重载函数必须有不同的参数个数或类型,如上述例子中的`fun()`函数。 - 只有参数列表不同(包括参数个数和类型),编译器才能正确区分不同的重载函数,即使返回类型不同也不行,如尝试使用`int`和`float`版本的`fun()`。 C++的缺省参数值和函数重载是提高代码复用性和灵活性的重要特性,理解和掌握它们有助于编写高效、可读性强的C++程序。